1、什么是PXE?
严格来说,PXE并不是一种安装方法,而是一种引导的形式。进行PXE安装的必要条件是要安装的计算机中包含一个PXE支持的网卡(NIC),即网卡中必需要有PXEClient。
PXE(Pre-bootExecutionEnvironment)合同使计算机可以通过网路启动。合同分为client和server端,PXEclient在网卡的ROM中,当计算机引导时,BIOS把PXEclient调入显存执行,由PXEclient将放置在远端的文件通过网路下载到本地运行。
运行PXE合同须要设置DHCP服务器和TFTP服务器。DHCP服务器拿来给PXEclient(即将安装系统的主机)分配一个IP地址,因为是给PXEclient分配IP地址,所以在配置DHCP服务器时须要降低相应的PXE设置。
据悉,在PXEclient的ROM中,早已存在了TFTPClient。PXEClient通过TFTP合同到TFTPServer上下载所需的文件。
2、什么是Kickstart?
KickStart是一种无人职守安装方法linux kickstart无人值守安装,KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各类参数,并生成一个名为ks.cfg的文件;
在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件。
当找到合适的参数时,就采用找到的参数linux kickstart无人值守安装,当没有找到合适的参数时,才须要安装者手工干预。
这样,假如KickStart文件囊括了安装过程中出现的所有须要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,之后去忙自己的事情。等安装完毕,安装程序会依照ks.cfg中设置的重启选项来重启系统,并结束安装。
3、PXE网路装机原理说明
在实际的操作中常常将TFTPServer,DHCPServer布署在一台机器上,也称服务端。
4、PXE网路装机的基本流程5、PXE网路装机的适用场景6、PXE网路装机的前提条件
PXE(Pre-bootExecutionEnvironment,预启动执行环境)结合Kickstart配置实现无人值守手动安装
7、PXE环境布署
服务端IP:192.168.200.254
# service iptables stop
# setenforce 0
配置YUM库房
# mount /dev/cdrom /mnt/
# rpm -i /mnt/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm
# umount /dev/cdrom
# mkdir /var/ftp/rhel6
# mount /dev/cdrom /var/ftp/rhel6/
# service vsftpd restart
# vim /etc/yum.repos.d/yum.repo
[base] //仓库类别
name=Red Hat Enterprise Linux 6 //仓库名称
baseurl=ftp://192.168.3.10/rhel6 //URL访问路径
gpgcheck=0 //验证软件包的签名
安装并启用TFTP服务
TFTP服务由tftp-server软件包提供,默认通过xinetd超级服务进行管理,须要将/etc/xinetd.d/tftp中的disable=yes更改为disable=no。并重启xinetd服务。
# yum -y install tftp-server
# vim /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
cps = 100 2
flags = IPv4
}
# service xinetd restart
用于PXE网路安装的Linux内核,初始化镜像文件可从光碟中找到分别为vmlinuz和initrd.img坐落images/pxeboot下,将两个文件复制到tftp服务的根目录下。
# cd /var/ftp/rhel6/images/pxeboot/
# cp vmlinuz initrd.img /var/lib/tftpboot/
打算PXE引导程序,启动菜单文件
用于PXE网路安装的引导程序为pxelinux.0由软件包syslinux提供,安装软件包后将文件复制到tftp服务的根目录下。
# yum -y install syslinux
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
启动菜单拿来指导顾客机的引导过程,包括怎样调用内核,怎么加载初始化镜像,默认的启动菜单为default,应放置tftp根目录的pxelinux.cfg子目录中。
# mkdir /var/lib/tftpboot/pxelinux.cfg
# cat /var/lib/tftpboot/pxelinux.cfg/default
default auto // 默认入口名称
prompt 1 // 1:表示等待用户控制
label auto
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=8192
定义了三个引导入口,分别是图型安装(默认)中文linux操作系统,文本安装,搜救模式
无人值守安装只须要一个入口
安装并启用DHCP服务
拿来为顾客机(裸机)手动分配地址并指定引导文件位置
# yum -y install dhcp
# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"?y
# vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
next-server 192.168.200.254; # TFTP 服务器地址
filename "pxelinux.0"; # PXE 引导程序文件名
subnet 192.168.200.0 netmask 255.255.255.0 {
option routers 192.168.200.254;
option subnet-mask 255.255.255.0;
option domain-name "crushlinux.com";
option domain-name-servers 202.106.0.20, 8.8.8.8;
range 192.168.200.100 192.168.200.200;
default-lease-time 21600;
max-lease-time 43200;
}
# service dhcpd start
验证PXE网路安装
在boot:直接回车或则输入auto,将会步入默认的图形安装入口
选择相应的语言
设置按键类型
选择通过URL安装
编辑网卡
设置PXE网路安装服务器
实现Kickstart无人值守安装
使用kickstart工具配置安装应答文件,手动安装安装过程中的各类设置,无需自动干预,提升装机效率
# yum -y install system-config-kickstart
# system-config-kickstart
在生产环境中
预安装脚本:可用户安装加载一些内置卡的驱动,比如RAID卡
安装后脚本:可用于设置一些初始化配置
将文件起名为ks.cfg,并保存到/var/ftp/pub下
# ll /var/ftp/pub/ks.cfg
-rw-r--r--. 1 root root 1204 12月 19 00:31 /var/ftp/pub/ks.cfg
编辑引导菜单文件default
# vim /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0
label auto
kernel vmlinuz
append ks=ftp://192.168.200.254/pub/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8192
PS:另外,杰哥建了个学习交流群,群气氛还是蛮不错的,你们有问题可以在群里交流,有须要的男子伴可以加一下。
加群形式:扫描下方二维码linux 关机命令,备注:城市-职业方向-爱称
本公众号全部博文已整理成一个目录,请在公众号后台回复「m」获取!