引言:日常装Linux需要用到硬盘U盘之类的,但是PXE可以实现网络装机。
目录
一、PXE
PXE 是网络引导技术,工作在 Client/Server 模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。
PXE 严格来说并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装
的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动。
PXE的优点:
规模化:同时装配多台服务器
自动化:安装系统、配置各种服务
远程实 现:不需要光盘、U 盘等安装介质。
二、PXE配置过程
1.配置两张网卡
ens33连接外网,这边用的72.0的网段
ens37用于配置新机器的网络,用的80.0的网段
2.安装并启用 DHCP 服务
yum -y install dhcp安装dhcp
cp -rfp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
复制并替换dhcp.conf.example到/etc/dhcp/dhcp.conf
vim /etc/dhcp/dhcpd.conf,修改配置
配置完开启dhcp服务,并开启开机自启。
systemctl start dhcpd
systemctl enable dhcpd
3.安装并启用 TFTP 服务
yum install -y tftp-server
vim /etc/xinetd.d/tftp
配置tftp文件,开启TFTP服务
准备tftp需要共享出去的文件
先挂载光盘
mount /dev/sr0 /mnt
cd /mnt/images/pxeboot/
cp initrd.img vmlinuz /var/lib/tftpboot/
yum install -y xinted 安装xinted
systemctl start xinetd systemctl enable xinetd
systemctl start tftp systemctl enable tftp
开启xinetd和开机自启,开启tftp和开机自启
4.准备 PXE 引导程序pxelinux.0
yum -y install syslinux安装syslinux
rpm -ql syslinux | grep pxelinux 查找pxe引导程序的位置
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 把系统引导文件,拷贝到tftp的根目录下
5.配置启动菜单文件
mkdir /var/lib/tftpboot/pxelinux.cfg 默认pxelinux.cfg是没有的需要手动创建,他是一个目录
vim /var/lib/tftpboot/pxelinux.cfg/default 配置default菜单文件,自己配置
6.安装ftp服务,准备 CentOS 7 安装源
yum -y install vsftpd 安装vsftpd
mount /dev/cdrom /mnt 将光盘挂载
mkdir /var/ftp/centos7 创建文件夹
cp -rf /mnt/* /var/ftp/centos7 将镜像复制其中
systemctl start vsftpd systemctl enable vsftpd 开启vsftp和开机自启
7.实现PXE安装
用vm虚拟机创建一个新的Linux系统
需要关闭防火墙
开启新的linux系统后就开始安装
这边直接回车
等待加载完
这个页面代表成功
三、Kickstart自动安装
yum install -y system-config-kickstart 安装kickstart
在图形界面配置 kickstart
配置语言简体中文,时区上海,root密码,和安装后重启。
设置执行全新安装,ftp安装,ftp服务器为主服务器ip,目录是之前设置好的目录
安装新引导装载程序,主引导记录中安装引导装载程序
设置不清楚主引导记录,删除所有现存分区,设置分区。
添加网络设备,设置dhcp
禁用防火墙
保存到var的ftp下
接着编辑ks.cfg,添加软件包
vim /var/ftp/ks.cfg
添加 ks 引导参数至引导菜单文件 ks=ftp://192.168.80.10/ks.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
保存之后,用新的Linux系统进行测试即可
显示下载表示成功。