PXE 无人值守安装:
通过网络方式自动进行系统安装
dhcp+tftp+vsftpd/http/nfs+kickstart
1.应用场景
1)需要进行大批量的部署操作系统(批量化)
2)pc机或者是没有光驱的服务器
3)需要经常更换或者重装linux操作系统
2.需求
1)网络畅通并且有一台发布安装源的服务器
2)需要被安装系统的机器支持网络引导,有pxe芯片
3.服务器的需求
1)dhcp 用来给客户端分配ip
2)tftp 用来发布内核和驱动文件 vmlinuz initrd.img
3)配置安装启动文件 ks.cfg
kickstart
4)vsftpd 提供镜像和ks.cfg文件
vsftpd nfs http
4.PXE工作原理视图
下面是PXE服务器的搭建
工作环境:
服务器 ip:192.168.11.11
1.配置DHCP 端口号: udp / 67
安装服务软件
yum install -y dhcp
查看软件生成的文件
rpm -ql dhcp
/etc/dhcp //配置文件目录
/etc/dhcp/dhcpd.conf //配置文件
/etc/rc.d/init.d/dhcpd //启动脚本
/etc/sysconfig/dhcpd //启动脚本的配置文件
/usr/sbin/dhcpd //守护进程
/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample //配置文件的模版
/var/lib/dhcpd/dhcpd.leases //租约信息
查看配置文件
rpm -qc dhcp
/etc/dhcp/dhcpd.conf **是dhcp服务器的主配置文件(实现DHCP的ipv4功能)
/etc/dhcp/dhcpd6.conf 是dhcp服务器的主配置文件(实现DHCP的ipv4功能)
/etc/openldap/schema/dhcp.schema
/etc/sysconfig/dhcpd 是dhcp服务器的辅助配置文件(用于多网卡环境)
/var/lib/dhcpd/dhcpd.leases 是dhcp服务器的租约文件(记录客户机从服务器获取的IP地址信息)
/var/lib/dhcpd/dhcpd6.leases
配置
cp -v /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf 修改以下内容
subnet 192.168.11.0 netmask 255.255.255.0 { range 192.168.11.26 192.168.11.30; option domain-name-servers 8.8.8.8; option domain-name "qf.com"; option routers 192.168.11.2; option broadcast-address 192.168.11.255; default-lease-time 6000; max-lease-time 72000; next-server 192.168.11.11; filename "pxelinux.0"; } |
定义网络地址和子网掩码 指定IP地址池的范围(起始和截止IP) 域名解析服务器的IP地址 域名 网关IP地址 广播地址 默认租约时间 最大租约时间 TFTP服务器的IP地址 PXE引导程序文件名 |
启动服务
systemctl restart dhcpd
systemctl enable dhcpd
systemctl status dhcpd
netstat -atunlp | grep :67 查67号端口的网络进程序
PXE客户机测试:
1. 在VMware虚拟机软件中新建一台名称为PXE0的centos7_64位系统的虚拟机。
2. 给PXE0虚拟机的内存设置成1324M。
3. 给PXE0虚拟机创建一个名称为“NOS”的快照。
4.启动PXE0虚拟机,会发现它自动获到了IP地址,并卡在了下图的界面
2.配置tftp 端口号: udp /69
安装服务软件
rpm -q tftp-server
yum install -y tftp-server
查看配置文件
rpm -qc tftp-server
cat /etc/xinetd.d/tftp
启动服务
systemctl restart tftp
systemctl enable tftp
systemctl status tftp
netstat -atunlp | grep 69 查网络进程中关于69号端口关键字的信息
3.配置 kickstart redhat 提供一个安装脚本工具(填好后保存,默认会生成一个ks.cfg文件)
安装提供pxelinux.0的sysliunx软件,共享pxe引导程序文件。
rpm -q syslinux mlocate
yum install -y syslinux mlocate
更新文件查找数据库中pxelinux.0文件
updatedb
locate pxelinux.0
共享指定文件到/var/lib/tftpboot目录中
cd /var/lib/tftpboot
cp -v /usr/share/syslinux/pxelinux.0 ./
df -hTcp -v /dvd/isoliunx/* ./
mkdir -v pxelinux.cfgcp -v isolinux.cfg pxelinux.cfg/default
PXE客户机测试:
重启PXE0虚拟机,会发现它自动获到了IP地址,并卡在了下图的
4.配置vsftpd文件共享 端口号: 21
安装服务
rpm -q vsftpd
yum install -y vsftpd
查看配置文件
rpm -qc vsftpd
启动服务
systemctl restart vsftpd
systemctl enable vsftpd
systemctl status vsftpd
netstat -atulp |grep vsftpd
netstat -atunlp | grep :21
共享系统镜像文件到/var/ftp/dvd目录
mkdir -v /var/ftp/dvd
mount /dev/sr0 /var/ftp/dvd
修改/var/lib/tftpboot/pxelinux.cfg/default 启动菜单内容
vim /var/lib/tftpboot/pxelinux.cfg/default
修改为
进入/var/lib/tftpboot目录下修改文件
cd /var/lib/tftpboot
将图片名修改为splash.png并加入可以修改界面文件
PXE客户机测试:
1. 重启PXE0虚拟机,等待自动进入系统安装菜单界面。
2. 在安装菜单界面用方向键选择第1个菜单,按Tab键显示菜单的内容,此时可以看到如下图所示的内容。
在第1个菜单界面上直接按回车键,等待安装程序的启动,直到进入下图所示的界面。