安装之前,我们必须明确能够进行PXE网络安装的前提条件:客户机网卡支持PXE协议(集成BOOTROM芯片),主板支持网络引导
网络中有一台DHCP服务器用于为客户机自动分配地址,指定引导文件的位置
服务器通过TFTP服务器提供引导文件的下载
PXE网络安装的过程:
当客户机不能够从光驱或U盘等设备安装系统时就需要使用PXE网络安装了,一台裸机装系统前也是没有ip地址的,所以要用dhcp服务器给它分配一个ip地址,这样它才能够去访问tftp服务器和ftp服务器,dhcp服务器除了制定分配的地址参数以外还指定tftp服务器的地址和引导程序的位置告诉客户机得到地址之后你下一步就是要去tftp服务器上调用这个引导程序开始引导安装,进入引导程序在引导菜单中我们将用ftp的方式把安装镜像下载下来并读取进行安装。系统的安装镜像在系统光盘中,我们会将光盘挂载在/var/ftp/pub目录下(默认的ftp访问路径)
1、安装所需要的软件
[root@localhost ~]# yum -y install tftp-server dhcp vsftpd #安装tftp,dhcp和vsftpd
[root@localhost ~]# vim /etc/xinetd.d/tftp #配置tftp服务
server_args = -s /var/lib/tftpboot #指定tftp根目录
disable = no #不禁用tftp服务
tftp服务器由tftp-server软件包提供,默认由xinetd超级服务进行管理,因此配置文件位于/etc/xinetd.d/tftp。配置时只要将“disable = yes”改为“disable = no”,然后再启动xinetd服务即可。
----------------------------------------------------------------
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf #配置dhcpd服务
subnet 192.168.10.0 netmask 255.255.255.0 { #配置分配地址的网段为192.168.10.0
range 192.168.10.2 192.168.10.10; #配置地址范围
option routers 192.168.10.1; #配置默认网关,这里就是服务器本身
}
filename "/pxelinux.0"; #指定客户机要去tftp服务器上找的网络安装的引导程序
next-server 192.168.10.1; #指定客户机要去房屋内的tftp服务器的地址
------------------------------------------------------------------
2、复制网络启动所需要文件到tftp服务器的根目录下
用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供。安装好软件包syslinux,然后将文件pxelinux.0也复制到tftp服务的根目录下
——————————————————————————————
[root@localhost ~]# yum -y install syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
——————————————————————————————
启动菜单用来指导客户机的引导过程,包括如何调用内核、如何加载初始化镜像。默认的启动菜单文件为default,应放置在tftp根目录的pxelinux.cfg子目录中,典型的启动菜单配置可参考以下操作手动建立。
———————————————————————————————————
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #安装菜单
cp /mnt/p_w_picpaths/pxeboot/initrd.img /var/lib/tftpboot #将初始化镜像复制到tftp根目录
cp /mnt/p_w_picpaths/pxeboot/vmlinuz /var/lib/tftpboot/ #将内核文件复制到tftp根目录
cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot #图形化安装菜单
——————————————————————————————————
3、启动所有服务
[root@localhost ~]# service xinetd start #启动TFTP服务
[root@localhost ~]# service dhcpd start #启动dhcpd服务
[root@localhost ~]# service vsftpd start #启动vsftpd服务
[root@localhost ~]#chkconfig --level 345 xinetd on #添加以上服务到系统服务并设置启动级别
[root@localhost ~]#chkconfig --level 345 tftp on
[root@localhost ~]#chkconfig --level 345 vsftpd on
[root@localhost ~]#chkconfig --level 345 dhcpd on
[root@localhost ~]# mount /dev/cdrom /var/ftp/pub #将系统安装光盘挂载到pub目录下
[root@localhost ~]# service iptables stop #关掉防火墙
[root@localhost ~]# setenforce 0 #关掉selinux
来到客户机上,开启客户机,它会自动获得dhcp获得的地址然后访问tftp成功之后就会进入引导菜单,选择安装进来以后,会让你设置语言等,选择好之后点OK进入到这一步的时候,注意选择URL
OK下一步输入安装的时候指定的路径,是将光盘挂在/var/ftp/pub目录下的路径,不用写绝对路径的
OK之后它会去寻找pub下面的安装镜像,出现以下界面之后就可以安装系统了。