dhcp、tftp、pxe、kickstart实现自动安装Linux系统

安装dhcp服务,以提供给客户端ip/netmask/gateway等

]# yum -y install dhcp

]# vim /etc/dhcp/dhcpd.conf

subnet 192.168.10.0 netmask 255.255.255.0 {
        range 192.168.10.200 192.168.10.210;
        option domain-name-servers 114.114.114.114;
        option routers 192.168.10.2;
        option subnet-mask 255.255.255.0;
        option broadcast-address 192.168.10.255;
        next-server 192.168.10.10;   #指定tftp服务器的IP地址
        filename "/pxelinux.0"; #这是个相对路径,tftp-server的工作目录:/var/lib/tftpboot/pxelinux.0
        default-lease-time 600;
        max-lease-time 7200;
}

]# dhcpd -t  #配置文件语法检查,显示All rights reserved 就表示OK

]# systemctl start dhcpd

]# systemctl enable dhcpd

安装tftp,tftp是用来下载远程文件的最简单的网络协议,工作目录在 /var/lib/tftpboot 下,需要将系统启动所需的引导文件放在此目录下

以供客户机引导安装系统。

]# yum -y install tftp-server

]# yum -y install syslinux  #引导程序,提供pxelinux.0

]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/  #复制第一个引导文件,到tftp工作目录下

/media/cdrom 是我的光盘挂载点,还需从光盘中复制引导文件到 tftp 的工作目录

]#cp /media/cdrom/images/pxeboot/initrd.img vmlinuz /var/lib/tftpboot/

添加一个配置文件,后面通过修改来告诉程序该如何引导

]# mkdir -pv /var/lib/tftpboot/pxelinux.cfg

]# cp /media/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

]# chmod u+w /var/lib/tftpboot/pxelinux.cfg/default

启动tftp ,不是直接systemctl ,步骤如下:

]# yum -y install xinetd

]# vim /etc/xinetd.d/tftp

]# systemctl restart xinetd.service

编写应答文件,实现自动化:

]#  yum -y install system-config-kickstart

]# system-config-kickstart &   #启动

语言  root密码  安装后重启 

选择光盘共享方式,以及共享目录

安装引导

硬盘分区

这里如果没有出现这个页面  没有找到这些软件包 ,就需要修改yum 仓库的 ID为development

 

然后点击左上角File,先将ks文件保存到某个目录,下面装完vsftpd, 再将这个ks复制到/var/ftp/ 目录下

]# yum -y install vsftpd

]# systemctl start vsftpd

]# systemctl enable vsftpd

]# cp /root/ks.cfg /var/ftp/

编辑引导文件

]# vim /var/lib/tftpboot/pxelinux.cfg/default

default 跟的名称是label 定义的名称, (label可以有多个,这里只定义一个)

timeout  超时间,单位:秒 。 超过5秒没有选择,默认引导 label名称 CentOS7 的系统。

三处分别是:名称(自定义) 、 内核、 引导文件的共享方式以及位置,,这里采用ftp来共享 ks 文件

此时还需将光盘共享出去,方法有 ftp、nfs、http ,这里选择 nfs

]# yum -y install nfs-utils

]# vim /etc/exports

  /media/cdrom *(rw)

]# systemctl start nfs-server

]# systemctl enable nfs-server

查看所需服务是否都正常启动

 

新建一个虚拟机,选择同一网段,开机,如下,先分配到IP地址,然后开始引导,无需再手点点点。。

 

猜你喜欢

转载自www.cnblogs.com/wuxiaofeng/p/10807281.html