一、PXE网络装机

  • PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统。
  • 在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。
  • PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。

1.预启动环境

(1)dhcp:下发IP地址

(2)vsftpd:共享光盘镜像

(3)tftp:传输引导、内核、启动环境文件等

2.先决条件

(1)网卡支持PXE协议

(2)部署服务端(PXE:pxelinux.0、initrd.img、vmlinuz)、tftp、vsftpd、dhcp

    pxelinux.0:PXE引导文件
    initrd.img:init环境(小型Linux环境)
    vmlinuz:内核文件

二、PXE部署

1.TFTP部署

yum -y install dhcp tftp tftp-server vsftpd syslinux
vim /etc/xinetd.d/tftp
14  disable         = no        //启动TFTP
/etc/init.d/xinetd start && chkconfig --level 35 xinetd on
service iptables stop && setenforce 0

2.DHCP部署

cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;            //指定下发的地址池
  option routers 192.168.1.10;              //指定下发的网关
  next-server 192.168.1.10;             //指定TFTP服务器的IP
  filename "pxelinux.0";                //指定PXE初始化文件名称
}
/etc/init.d/dhcpd start && chkconfig --level 35 dhcpd on

3.PXE部署

cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/            //拷贝引导文件到TFTP目录
cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/           //拷贝内核文件到TFTP目录
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/            //拷贝PXE引导到TFTP目录

4.配置启动菜单

mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default              //新建启动菜单文件
label hehe              //指定启动菜单名
default hehe                //默认启动菜单
prompt 0                    //“1”需用户选择哪个菜单、“0”不需用户确认
kernel vmlinuz              //指定内核文件名
append initrd=initrd.img devfs=nomount ramdisk_size=8192        //指定引导参数

5.vsftpd部署

mkdir /var/ftp/centos           //新建光盘挂载目录
mount /dev/cdrom /var/ftp/centos
/etc/init.d/vsftpd start && chkconfig --level 35 vsftpd on

三、kickstart部署

实现无人值守装机,即无需人为干预,全自动安装

1.安装桌面

yum -y groupinstall "Desktop"           //安装GNOME桌面

2.中文支持(可选)

vim /etc/sysconfig/i18n
LANG=en_US.UTF-8 该为 LANG=zh_CN.UTF-8        //将系统语言设置为中文
yum -y groupinstall "Chinese Support"       //安装中文支持包
reboot    //重启
init 5    //进入图形化界面

3.安装kickstart软件包

Alt + F2 --> gnome-terminal    //打开终端
yum -y install system-config-kickstart    //安装软件包
运行kickstart -->调整系统安装参数(自定义配置)--> 将文件保存到/var/ftp/

4.修改启动菜单文件

vim /var/lib/tftpboot/pxelinux.cfg/default              //新建启动菜单文件
label hehe              //指定启动菜单名
default hehe                //默认启动菜单
prompt 0                    //“1”需用户选择哪个菜单、“0”不需用户确认
kernel vmlinuz              //指定内核文件名
append ks=ftp://192.168.1.10/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8192       //指定引导参数

5.客户端测试

无需人为干预,一杯咖啡的时间,系统即可登录使用