PXE 装机服务器的搭建

PXE 装机服务器的搭建

一、环境准备
[root@pxesvr ~]# ifconfig eth0 | grep "inet "
inet 192.168.4.5 netmask 255.255.255.0 broadcast 192.168.4.255
[root@pxesvr ~]# hostname
pxesvr.tedu.cn
[root@pxesvr ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search tedu.cn
nameserver 192.168.4.5
[root@pxesvr ~]# grep SELINUX= /etc/sysconfig/selinux
# SELINUX= can take one of these three values:
SELINUX=disabled
[root@pxesvr ~]# setenforce 0
[root@pxesvr ~]# getenforce
Permissive
[root@pxesvr ~]# firewall-cmd --get-default-zone
public
[root@pxesvr ~]# firewall-cmd --set-default-zone=trusted
success
[root@pxesvr ~]# yum-config-manager --add http://192.168.4.254/rh7dvd/
[root@pxesvr ~]# echo "gpgcheck=0" >> /etc/yum.repos.d/192.168.4.254_rh7dvd_.repo
二、PXE服务部署
1. 配置HTTP,实现YUM源
[root@pxesvr ~]# yum clean all
[root@pxesvr ~]# rpm -q httpd
[root@pxesvr ~]# yum list httpd
[root@pxesvr ~]# yum -y install httpd
把RHEL7.2 dvd光盘放入光驱
[root@pxesvr ~]# umount /dev/cdrom
[root@pxesvr ~]# mount /dev/cdrom /mnt/
[root@pxesvr ~]# mkdir /var/www/html/rh7dvd
[root@pxesvr ~]# cp -rfp /mnt/* /var/www/html/rh7dvd/
[root@pxesvr ~]# du -sh /var/www/html/rh7dvd/ /mnt/
3.9G /var/www/html/rh7dvd/
3.9G /mnt/
[root@pxesvr ~]# systemctl restart httpd
[root@pxesvr ~]# systemctl enable httpd
[root@pxesvr ~]# netstat -anptu | grep httpd
tcp6 0 0 :::80 :::* LISTEN 6061/httpd
测试:
http://192.168.4.5/rh7dvd/
2. 配置DHCP服务器
[root@pxesvr ~]# rpm -q dhcp
[root@pxesvr ~]# yum list dhcp
[root@pxesvr ~]# yum -y install dhcp
[root@pxesvr ~]# cat /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.10 192.168.4.20;
option domain-name-servers 192.168.4.5;
option domain-name "tedu.cn";
next-server 192.168.4.5;
filename "pxelinux.0";
}
[root@pxesvr ~]# systemctl restart dhcpd
[root@pxesvr ~]# systemctl enable dhcpd
[root@pxesvr ~]# netstat -anptu | grep dhcpd
udp 0 0 0.0.0.0:57024 0.0.0.0:* 6963/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 6963/dhcpd
udp6 0 0 :::21554 :::* 6963/dhcpd
3. 配置TFTP服务器
[root@pxesvr ~]# rpm -q tftp-server
[root@pxesvr ~]# yum list tftp-server
[root@pxesvr ~]# yum -y install tftp-server
[root@pxesvr ~]# systemctl restart tftp
[root@pxesvr ~]# systemctl enable tftp
[root@pxesvr ~]# netstat -anptu | grep :69
udp6 0 0 :::69 :::* 1/systemd
4. 配置启动文件
[root@pxesvr ~]# rpm -q syslinux
[root@pxesvr ~]# yum list syslinux
[root@pxesvr ~]# yum -y install syslinux
[root@pxesvr ~]# rpm -ql syslinux |grep pxelinux.0
[root@pxesvr ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@pxesvr ~]# mkdir /var/lib/tftpboot/rhel7
[root@pxesvr ~]# cd /var/www/html/rh7dvd/isolinux/
[root@pxesvr isolinux]# cp initrd.img vmlinuz /var/lib/tftpboot/rhel7/
[root@pxesvr isolinux]# cp vesamenu.c32 splash.png /var/lib/tftpboot/
[root@pxesvr isolinux]# mkdir /var/lib/tftpboot/pxelinux.cfg/
[root@pxesvr isolinux]# cp isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@pxesvr isolinux]# ls -R /var/lib/tftpboot/
/var/lib/tftpboot/:
pxelinux.0 pxelinux.cfg rhel7 splash.png vesamenu.c32

/var/lib/tftpboot/pxelinux.cfg:
default

/var/lib/tftpboot/rhel7:
initrd.img vmlinuz
[root@pxesvr isolinux]# vim /var/lib/tftpboot/pxelinux.cfg/default
...
61 label linux
62 menu label ^Install Red Hat Enterprise Linux 7.2
63 kernel rhel7/vmlinuz
64 append initrd=rhel7/initrd.img inst.stage2=http://192.168.4.5/rh7dvd quiet
5. 检验pxe装机服务器

6. 生成Kiskstart文件
[root@pxesvr ~]# rpm -q system-config-kickstart
[root@pxesvr ~]# yum list system-config-kickstart
[root@pxesvr ~]# yum -y install system-config-kickstart
[root@pxesvr ~]# system-config-kickstart
具体文件内容参考FTP ks-rhel7.cfg

7.调整default文件
[root@pxesvr ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
...
61 label linux
62 menu label ^Install Red Hat Enterprise Linux 7.2
63 menu default
64 kernel rhel7/vmlinuz
65 append initrd=rhel7/initrd.img ks=http://192.168.4.5/ks/ks-rhel7.cfg

8. 测试

三、增加rhel6.7的安装源
1. 准备rhel6.7源
在光驱中放入rhel6.7 ios文件
[root@pxesvr ~]# umount /dev/cdrom
[root@pxesvr ~]# mount /dev/cdrom /mnt/
[root@pxesvr ~]# mkdir /var/www/html/rh6dvd
[root@pxesvr ~]# cp -rfp /mnt/* /var/www/html/rh6dvd/
2. 添加rhel6的内核文件,初始化文件
[root@pxesvr ~]# cd /var/lib/tftpboot/
[root@pxesvr tftpboot]# mkdir rhel6
[root@pxesvr tftpboot]# cd /var/www/html/rh6dvd/isolinux/
[root@pxesvr isolinux]# cp vmlinuz initrd.img /var/lib/tftpboot/rhel6/
3. 修改default文件
[root@pxesvr isolinux]# vim /var/lib/tftpboot/pxelinux.cfg/default
...
61 label rhel6
62 menu label Install Red ^Hat Enterprise Linux 6.7
63 kernel rhel6/vmlinuz
64 append initrd=rhel6/initrd.img ks=http://192.168.4.5/ks/ks-rhel6.cfg
65
66 label rhel7
67 menu label ^Install Red Hat Enterprise Linux 7.2
68 menu default
69 kernel rhel7/vmlinuz
70 append initrd=rhel7/initrd.img ks=http://192.168.4.5/ks/ks-rhel7.cfg
4. 生成ks-rhel6.cfg文件
[root@pxesvr isolinux]# cd /var/www/html/ks/
[root@pxesvr ks]# cp -p ks-rhel7.cfg ks-rhel6.cfg
[root@pxesvr ks]# vim ks-rhel6.cfg
...
12 url --url="http://192.168.4.5/rh6dvd"
...
36 part /boot --fstype="ext4" --size=200
37 part / --fstype="ext4" --size=10000
38 part swap --fstype="swap" --size=8192
39
40 %post --interpreter=/bin/bash
41 rm -rf /etc/yum.repos.d/*.conf
42 echo "[rhel6]
43 name=rhel6.7
44 baseurl=http://192.168.4.5/rh6dvd
45 enabled=1
46 gpgcheck=0" > /etc/yum.repos.d/rhel6.repo
47 yum clean all
5. 测试

 

转载于:https://www.cnblogs.com/fuzhongfaya/p/8952393.html

你可能感兴趣的:(PXE 装机服务器的搭建)