PXE Linux 自动部署

时间:2022-04-29
本文章向大家介绍PXE Linux 自动部署,主要内容包括安装软件、TFTP、syslinux、挂载安装光盘、复制引导文件、VSFTP、kickstart、开机自启动服务、客户端、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

Linux 自动部署需要以下软件 PXE dhcp tftp vsftpd kickstart

服务器 IP 192.168.57.101

安装软件

$ yum install tftp-server dhcp syslinux vsftpd xinetd

DHCP

修改 /etc/dhcp/dhcpd.conf 文件

allow booting;
allow bootp;
ddns-update-style interim;
ignore client-updates ;
subnet 192.168.57.0 netmask 255.255.255.0 {
    option routers                  192.168.57.1;
    option subnet-mask              255.255.255.0;
    range dynamic-bootp 192.168.57.101 192.168.57.200;
    default-lease-time 21600;
    max-lease-time 43200;
    next-server 192.168.57.101;
    #注意改地址
    filename "pxelinux.0";
}

TFTP

配置 xinetd

/etc/xinetd.d/tftp 中的 disable 值设为 no

syslinux

挂载安装光盘

在 root 家目录新建 cdrom 文件夹,挂载光盘

$ mkdir cdrom
$ mount /dev/cdrom cdrom

复制引导文件

$ cd /var/lib/tftpboot
$ cp /usr/share/syslinux/pxelinux.0 .
$ cp ~/cdrom/images/pxeboot/{initrd.img,vmlinuz} .
$ cp ~/cdrom/isolinux/{vesamenu.c32,*.msg} .
$ mkdir pxelinux.cfg
$ cp ~/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default

编辑 pxelinux.cfg/default 文件。

#第1行

default linux
#第64行

append initrd=initrd.img inst.stage2=ftp://192.168.57.101 ks=ftp://192.168.57.101/pub/ks.cfg quiet

#第70行

append initrd=initrd.img inst.stage2=ftp://192.168.57.101 rd.live.check ks=ftp://192.168.57.101/pub/ks.cfg quiet

VSFTP

复制光盘镜像内容到 ftp 目录

$ cp -r ~/cdrom/* /var/ftp

kickstart

$ cp ~/anaconda-ks.cfg /var/ftp/pub/ks.cfg
$ chmod +r /var/ftp/pub/ks.fg

修改 /var/ftp/pub/ks.cfg 文件

#第6行

url --url=ftp://192.168.57.101

#第21行

timezone Asia/Shanghai --isUtc

#第28行

clearpart --all -initlabel

开机自启动服务

$ systemctl enable dhcpd
$ systemctl enable vsftpd
$ systemctl enable xinetd

客户端

设置网卡为第一启动项