PXE安装CentOS教程

简介
PXE(Preboot eXecution Environment)是一种网络启动环境,允许计算机通过网络启动操作系统,本文将详细介绍如何使用PXE安装CentOS操作系统。
准备工作
- 准备一台服务器作为TFTP服务器,用于提供启动镜像和安装文件。
- 准备一台客户端计算机,用于安装CentOS。
- 准备CentOS安装镜像文件,可以从CentOS官方网站下载。
配置TFTP服务器
安装TFTP服务器软件
以CentOS为例,使用以下命令安装TFTP服务器:
sudo yum install tftp tftp-server xinetd
配置TFTP服务
编辑/etc/xinetd.d/tftp文件,修改以下内容:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
onfail = restart
onsuccess = restart
} 修改TFTP共享目录权限

sudo chmod 777 /var/lib/tftpboot
重启TFTP服务
sudo systemctl restart xinetd
配置DHCP服务器
安装DHCP服务器软件
以CentOS为例,使用以下命令安装DHCP服务器:
sudo yum install dhcp
配置DHCP服务
编辑/etc/dhcp/dhcpd.conf文件,添加以下内容:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
next-server 192.168.1.100;
filename "pxelinux.0";
} 重启DHCP服务
sudo systemctl restart dhcpd
配置PXE客户端
下载并解压CentOS安装镜像文件,将
images目录下的pxelinux.0、isolinux.bin、vmlinuz、initrd.img等文件复制到TFTP共享目录/var/lib/tftpboot。
创建PXE安装菜单文件
menu.c32如下:
default vesamenu.c32 prompt 1 timeout 600 label local menu label ^Local Boot menu default kernel vmlinuz initrd initrd.img append initrd=initrd.img ramdisk_size=8192 label netboot menu label ^Net Boot menu default kernel vmlinuz initrd initrd.img append initrd=initrd.img ramdisk_size=8192 netdevice=e1000
- 将
menu.c32文件复制到TFTP共享目录/var/lib/tftpboot。
启动PXE安装
- 断开客户端计算机的网线,连接到DHCP服务器所在的网络。
- 启动客户端计算机,进入BIOS设置,将启动顺序设置为从网络启动。
- 重启计算机,客户端计算机将自动从网络启动并进入CentOS安装界面。
相关问答FAQs
问题:为什么客户端计算机无法从网络启动?
解答:请检查以下问题:
- DHCP服务器配置是否正确?
- TFTP服务器配置是否正确?
- TFTP共享目录权限是否正确?
- PXE客户端配置是否正确?
问题:为什么安装过程中出现“找不到初始化ramdisk”的错误?
解答:请检查以下问题:
- 是否将
initrd.img文件复制到TFTP共享目录? menu.c32文件中的initrd路径是否正确?- 确保客户端计算机的BIOS支持网络启动。
