Dnsmasq 配置PXE批量安装系统

以下测试都是基于centos 7下的环境

需要安装的软件为

nginx 用来下载ks.cfg和系统镜像文件用的,也可以用ftp服务器来代替

dnsmasq 提供dhcp服务和tftp服务,也可以单独去安装

syslinux 提供pxe的启动文件pxelinux.0

执行以下命令安装

yum install dnsmasq syslinux  -y

然后创建tftp的目录

mkdir /var/lib/tftp

拷贝pxe的启动文件pxelinux.0

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftp/

挂载centos系统镜像,Pxe安装系统需要原系统镜像中的vmlinuz(引导程序) initrd.img(RAM的Linux) 两个支持网络安装的文件

从iso中拷贝内核镜像和文件系统镜像

我们挂载镜像在 /var/ftp/pub/ 这个目录下面,启动需要的文件在镜像的images目录下面

cp /var/ftp/pub/images/pxeboot/initrd.img /var/tftp/

cp /var/ftp/pub/images/pxeboot/vmlinuz    /var/tftp/

准备默认的菜单配置文件

mkdir /var/lib/tftp/pxelinux.cfg/

vim /var/lib/tftp/pxelinux.cfg/default

内容如下

default linux
prompt 1
timeout 60
display boot.msg
label linux
kernel vmlinuz
append initrd=initrd.img text ks=http://172.17.3.10/ks.cfg ###指定ks.cfg文件下载路径###

后续需要生成ks.cfg

我们还需要配置下dnsmasq

vim /etc/dnsmasq.conf

配置如下

listen-address=172.17.3.10,127.0.0.1 ##指定监听IP
domain=house.com  ##域名
dhcp-range=172.17.3.220,172.17.3.230,1h ##IP地址分配范围##
dhcp-option=3,172.17.3.254 ##网关
dhcp-boot=pxelinux.0 ##配置启动接口
enable-tftp ##打开tftp功能##
tftp-root=/var/lib/tftp ##指定tftp目录##
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig

以上配置可参考如下图片,图片来自网络

 

最后我们把ks.cfg也就是kickstart文件放到nginx的目录下就可以了

最后启动dnsmasq就可以了。

其实dnsmasq也可以用tftp和dhcp这2个服务来代替

使用tftp和dhcp的方法如下

安装tftp和dhcp

yum install tftp-server  dhcp -y

配置tftp-server

vim /etc/xinetd.d/tftp

service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

配置DHCP

vim /etc/dhcp/dhcpd.conf

ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 172.17.3.0 netmask 255.255.255.0 {
        option routers                  172.17.3.254;
        option subnet-mask              255.255.255.0;
        option domain-name-servers      172.17.3.254;
        option time-offset              -18000; # Eastern Standard Time  
        range dynamic-bootp 172.17.3.80 172.17.3.88;
        default-lease-time 21600;
        max-lease-time 43200;
        next-server 172.17.3.10;
        filename "pxelinux.0";
}

其余步骤不变,到这里完结。

 

转载于:https://www.cnblogs.com/hh2737/p/9815072.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值