[Linux]-使用PXE网络环境批量装机

PXE简介

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

 1.配置YUM和IP地址

略,详情见前置blogs

2.VSFTPD服务

vsftpd 的作用:为客户端提供FTP服务,便于客户端下载操作系统

安装vsftpd

yum -y insatll vsftpd

修改vsftpd服务配置文件

# vim /etc/vsftpd/vsftpd.conf
修改:
local_enable=NO  //关闭本地用户验证

启动服务,并查看状态

service vsftpd restart
netstat -anpt | grep vsftpd

3.TFTP服务

TFTP的作用:为客户端提供引导文件、内核文件和初始化文件的下载

安装tftp服务

yum -y install tftp-server

修改tftp的配置文件

# vim /etc/xinetd.d/tftp
修改:
disable = no        //将此处的yes改为no

启动服务,并验证

service xinetd restart
netstat -anpu | grep xinetd

4.DHCP服务

DHCP的作用:为客户端分配IP地址,为客户端指定TFTP服务器和引导文件

安装DHCP服务

yum -y insatll dhcp

配置dhcp

复制代码
# vim /etc/dhcp/dhcpd.conf
修改:
option domain-name "lilk.com";
option domain-name-servers 192.168.1.1;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192.168.1.5 192.168.1.50;
 option routers 192.168.1.1;
 next-server 192.168.1.1;    //指定tftp服务器的IP地址    
 filename "pxelinux.0";        //指定引导文件名
}
复制代码

启动服务,并验证状态

service dhcpd start
netstat -anpu | grep dhcpd

5.准备操作系统

# mount /dev/cdrom /mnt/        //挂载系统光盘
# mkdir /var/ftp/centos        //在ftp目录下创建一个存放系统镜像文件的目录
# cp -r /mnt/* /var/ftp/centos/    //将系统镜像文件拷贝到刚创建的目录
# du -sh /var/ftp/centos/

6.准备PXE所需文件

引导文件

引导文件需要安装syslinux包

# yum -y install syslinux
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

内核文件

# cp /mnt/isolinux/vmlinuz /var/lib/tftpboot/    //从系统光盘中去找

初始化镜像文件

# cp /mnt/isolinux/initrd.img /var/lib/tftpboot/    //从系统光盘中去找

7.无人职守

1.安装system-config-kickstart软件

# yum -y install system-config-kickstart

2.生成应答文件(使用图形化)

# system-config-kickstart    //启动system-config-kickstart(图形化)生成应答文件
# cp ks.cfg /var/ftp/      //将应到文件放在ftp目录下

ftp服务器一栏,直接写入IP地址,目录写centos

3、修改启动菜单文件

# vim /var/lib/tftpboot/pxelinux.cfg/default
修改:
default auto
prompt 0        //改为0,表示自动
timeout 600

label auto
kernel vmlinuz
append ks=ftp://192.168.1.1/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux text
kernel vmlinuz
append text initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img devfs=nomount ramdisk_size=8192

4.受客户机调制同一LAN区段(网卡),去除CDiso驱动器,使用网络驱动后直接开机开始装系统,客户机先拿IP,再找安装配置文件,后安装系统

这个提示是系统原因,忽略掉吧~~

随后系统自动完成安装

原文地址:https://www.cnblogs.com/chenwz/p/7670708.html