欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

LinuxPXE+Kickstrart无人值守安装服务

程序员文章站 2022-07-04 17:35:31
要求:关闭VMware虚拟网络编辑器中自身的DHCP服务 1、挂在本地镜像源本配置Yum仓库,安装DHCP服务 2、配置DHCP服务 [root@NoneOs ~]# systemctl restart dhcpd[root@NoneOs ~]# systemctl enable dhcpdCrea ......

要求:关闭vmware虚拟网络编辑器中自身的dhcp服务

LinuxPXE+Kickstrart无人值守安装服务

主机名称 操作系统 ip地址
noneos centos7 192.168.72.250
custormer  

 

 

 1、挂在本地镜像源本配置yum仓库,安装dhcp服务

[root@noneos ~]# yum install dhcp -y

2、配置dhcp服务

[root@noneos ~]# vim /etc/dhcp/dhcpd.conf

allow booting;
allow bootp;
ddns-update-style interim;
ignore client-updates;
subnet 192.168.72.0 netmask 255.255.255.0 {
        option subnet-mask 255.255.255.0;
        option domain-name-servers 192.168.72.250;
        range dynamic-bootp 192.168.72.100 192.168.72.200;
        default-lease-time 21600;
        max-lease-time 43200;
        next-server 192.168.72.250;
        filename "pxelinux.0";
}

[root@noneos ~]# systemctl restart dhcpd
[root@noneos ~]# systemctl enable dhcpd
created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service to /usr/lib/systemd/system/dhcpd.service.

 

3、配置tftp服务程序

[root@noneos ~]# yum install tftp-server -y

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
}

[root@noneos ~]# systemctl restart xinetd
[root@noneos ~]# systemctl enable xinetd

 

tftp服务程序默认使用udp协议,占用的端口是69,在生产环境中需要在firewalld防火墙工具中写入使其永久生效的允许策略。

firewall-cmd --permanent --add-port=69/udp
firewall-cmd --reload

在实验环境中可以直接将防火墙关闭

[root@noneos ~]# systemctl stop firewalld

4、syslinux服务

[root@noneos ~]# yum install syslinux -y

 

首先将syslinux提供的引导文件复制到tftp服务程序的默认目录中,就是之前pxelinux.0该文件,这样客户端主机就能顺利地获取到引导文件。还需要调用一些centos7光盘镜像的一些引导文件,确认光盘镜像挂在到本地然后将其中的一些引导文件复制到tftp服务程序的默认目录中。

[root@noneos tftpboot]# cp /usr/share/syslinux/pxelinux.0 .
[root@noneos tftpboot]# cp /media/images/pxeboot/{vmlinuz,initrd.img} .
[root@noneos tftpboot]# cp /media/isolinux/{vesamenu.c32,boot.msg} .

然后在tftp服务程序的目录中新建pxelinux.cfg目录,此目录虽然带有后缀,但是依然是目录。将系统光盘中的开机选项菜单复制到该目录中,并命名为default

[root@noneos tftpboot]# mkdir pxelinux.cfg
[root@noneos tftpboot]# cp /media/isolinux/isolinux.cfg pxelinux.cfg/default

修改复制来的default文件

[root@noneos tftpboot]# vim pxelinux.cfg/default
 1 default linux

64 append initrd=initrd.img inst.stage2=ftp://192.168.72.250 ks=ftp://192.168.7    2.250/pub/ks.cfg quiet

 5、配置vsftpd服务

 光盘镜像通过ftp协议来传输,因此用到vsfptd服务。

[root@noneos ~]# yum install vsftpd -y

 [root@noneos ~]# systemctl restart vsftpd


 [root@noneos ~]# systemctl enable vsftpd
created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

 

在确认光盘镜像文件正常挂在到本地目录之后,把该目录中的光盘镜像文件全部复制到vsftpd的工作目录中。

[root@noneos ~]# cp -r /media/* /var/ftp/

在生产环境中,需要将ftp协议在firewalld防火墙中写入永久生效的允许策略,然后在selinux中放行ftp传输:

firewall-cmd --permanent --add-service=ftp

firewall-cmd --reload

setsebool -p ftpd_connect_all_unreserved=on

6、创建kickstart应答文件

kisckstart并不是一个服务程序,而是一个应答文件,包含了系统安装过程中需要使用的选项和参数信息,系统可以自动调取这个应答文件的内容,从而实现无人值守安装系统。

这个文件就在root管理员的家目录名为anaconda-ks.cfg文件。

 

[root@noneos ~]# cp -r /media/* /var/ftp/
[root@noneos ~]# cp ~/anaconda-ks.cfg /var/ftp/pub/ks.cfg
[root@noneos ~]# chmod +r /var/ftp/pub/ks.cfg
[root@noneos ~]# vim /var/ftp/pub/ks.cfg
5 url --url=ftp://192.168.72.250
23 timezone asia/shanghai --isutc
28 clearpart --all --initlabel

 

7、自动部署客户端主机

LinuxPXE+Kickstrart无人值守安装服务

 

 

LinuxPXE+Kickstrart无人值守安装服务

 

 

 

LinuxPXE+Kickstrart无人值守安装服务

 

 

 

 网络模式选择仅主机LinuxPXE+Kickstrart无人值守安装服务

 

 自动安装无须人工干预LinuxPXE+Kickstrart无人值守安装服务