目录
PXE是什么?
批量装机系统,网络安装linux操作系统。需要客户端的网卡支持pxe网络启动。
PXE的组件:
- vsftpd/httpd/nfs
负责提供系统的安装文件
- tftp
负责提供系统安装前的引导文件与内核文件
- dhcp
负责提供客户端的IP地址分配与pxe引导文件,及pxe服务器地址
配置vsftpd关闭防火墙与selinux
安装vsftpd yum -y install vsftpd
启动vsftpd systemctl start vsftpd
配置tftp
- 安装tftp-server
yum install -y tftp-server
- 启动tftp
vim /etc/xinit.d/tftp
disable=no
systemctl start tftp
准备pxelinx.0文件、引导文件、内核文件
1.准备pxelinux.0文件
yum install -y syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
2.准备引导文件、内核文件
cd /光盘挂载路径/images/pxeboot/
cp initrd.img vmlinuz /var/lib/tftpboot
配置dhcp
1.安装dhcp服务
yum install -y dhcp
2.配置dhcp配置文件
cd /etc/dhcp/
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim dhcpd.conf删除其余subnet字段
subnet 192.168.115.0 netmask 255.255.255.0 {
range 192.168.115.1 192.168.115.254;
option domain-name-servers ns1.internal.example.org;
option domain-name "internal.example.org";
option routers 192.168.115.7;
option broadcast-address 192.168.115.255;
default-lease-time 600;
max-lease-time 7200;
next-server 192.168.115.7;
filename "pxelinux.0";
}
启动dhcp服务
systemctl start dhcpd
创建default文件
cd /var/lib/tftpboot
mkdir pxelinux.cfg
cd pxelinux.cfg
vim default
default auto 默认安装标签
prompt 1 等待用户确认,1表示等待,0表示不等待
label auto 定义标签
kernel vmlinuz 指定内核
append initrd=initrd.img method=ftp://192.168.115.7/centos7 指定引导镜像文件与系统安装文件
创建新虚拟机等待安装(交互式安装完毕)
点击确认
创建centos7目录
拷贝系统文件到/var/ftp/centos7
mkdir /var/ftp/centos7 cp -rf /mnt/* /var/ftp/centos7/
重启动 ysftp,并将磁盘挂在到 centos7
systemctl restart vsftpd
mount /dev/sr0 /var/ftp/centos7
- 配置pxe无人值守安装
- 使用图形界面配置
yum install -y system-config-kickstart.noarch
system-config-kickstart
选择语言中文 时区 上海
设置分区
添加网络
添加安装后的脚本
rm -rf /etc/yum.repos.d/*
echo '[local]
name=local
baseurl=ftp://192.168.80.10/centos7
enabled=1
gpgcheck=0' > /etc/yum.repos.d/local.repo
保存的/root下
vim /root/anaconda-ks.cfg 复制需要安装的软件包到ks.cfg
cp /root/ks.cfg /var/ftp
- 修改default文件
default auto
prompt 0
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.44.128/centos7 ks=ftp://192.168.115.7 ks=ftp://192.168.44.128/ks.cfg