PXE服务器配置

发布时间:2023年12月21日

1. 安装并启用 DHCP 服务

yum -y install dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

修改配置文件:
vim /etc/dhcp/dhcpd.conf
--------------------------------------
ddns-update-style none;   // 禁止动态更新

# A slightly different configuration for an internal subnet.
subnet 192.168.242.0 netmask 255.255.255.0 {   #配置网段
  range 192.168.242.180 192.168.242.200;   #配置地址池
  option domain-name-servers ns1.internal.example.org;
  option domain-name "internal.example.org";
  option routers 192.168.242.133;  #配置网关
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.242.133;  #指定tftp服务器的地址
  filename "pxelinux.0";   #指定pxe引导程序的文件名
}
--------------------------------------
systemctl start dhcpd
systemctl enable dhcpd

2. 安装并启用 TFTP 服务

yum -y install tftp-server xinetd
vim /etc/xinetd.d/tftp
--------------------------------------
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = no    #wait no表示客户机可以多台一起连接,yes表示客户机只能一台一台连接,表示是否开启多线程一起工作,否则需要等待
        user                    = root
        server                    = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot    #指定TFTP根目录(引导文件的存储路径) -c允许上传
        disable                 = no   #disable no表示开启TFTP服务 
        per_source              = 11    #通过限制一个主机的最大连接数,从而防止某个主机独占某个服务,这里每个IP地址的连接数是11个
        cps                     = 100 2   #表示服务器最多启动100个连接,如果达到这个数目将停止启动新服务2秒。在此期间不接受任何请求
        flags                   = IPv4
}
--------------------------------------
systemctl start tftp         
systemctl enable tftp            
systemctl start xinetd            
systemctl enable xinetd

3. 准备 tftp 需要共享出去的文件

mount /dev/sr0 /mnt
cd /mnt/images/pxeboot
cp initrd.img vmlinuz /var/lib/tftpboot/

4. 准备 PXE 引导程序

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

5. 配置启动菜单文件

mkdir /var/lib/tftpboot/pxelinux.cfg      
vim /var/lib/tftpboot/pxelinux.cfg/default

default auto              #指定默认入口名称
prompt 0                #设置是否等待用户选择,“1”表示等待用户控制 “0表示自动”
 
label auto                #图形安装(默认)引导入口,label 用来定义启动项
kernel vmlinuz              #kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.242.133/centos7
 
label linux text            #文本安装引导入口
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.242.133/centos7
 
label linux rescue            #救援模式引导入口
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.242.133/centos7

6. 安装FTP服务,准备CentOS 7 安装源

yum -y install vsftpd               #安装vsftpd服务
mkdir /var/ftp/centos7              #在ftp根目录下创建目录centos7
cp -rf /mnt/* /var/ftp/centos7/     #将镜像文件强制复制到centos7目录中,可加&让它自己后台运行
systemctl start vsftpd              #开启vsftpd服务
systemctl enable vsftpd
文章来源:https://blog.csdn.net/m0_60169980/article/details/135113094
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。