使用PXE+Kickstart无人值守安装服务

一、      配置DHCP服务程序

1)      按照图在虚拟机的虚拟网络编辑器中关闭自身的DHCP服务。

2)      当挂载好光盘镜像并把Yum仓库文件配置妥当后,就可以安装DHCP服务程序软件包了。

 

3)      挂载光盘镜像配置yum源

[root@localhost ~]# mount /dev/cdrom /mnt/    #挂载光盘镜像文件到/mnt文件下

mount: /dev/sr0 写保护,将以只读方式挂载

[root@localhost ~]# mkdir /opt/centos       #在/opt创建centos文件夹

[root@localhost ~]# cp -rvf /mnt/* /opt/centos/   #再把 /mnt中的所有文件复制到/opt/centos文件中

[root@localhost ~]# umount  /mnt/     #释放挂载文件

 

[root@localhost ~]# rm  -rvf /etc/yum.repos.d/*     #把系统中原有的repo文件删除

已删除"/etc/yum.repos.d/CentOS-Base.repo"

已删除"/etc/yum.repos.d/CentOS-CR.repo"

已删除"/etc/yum.repos.d/CentOS-Debuginfo.repo"

已删除"/etc/yum.repos.d/CentOS-fasttrack.repo"

已删除"/etc/yum.repos.d/CentOS-Media.repo"

已删除"/etc/yum.repos.d/CentOS-Sources.repo"

已删除"/etc/yum.repos.d/CentOS-Vault.repo"

[root@localhost ~]#

 

在/etc/yum.repos.d创建centos.repo源文件

[root@localhost ~]# vi /etc/yum.repos.d/centos.repo

[centos]

name=centos

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

4)、清楚yum源;重新生成yum源

[root@localhost ~]#  yum clean all;yum makecache     #清楚yum源;再重新生成

已加载插件:fastestmirror

正在清理软件源: centos

Cleaning up everything

已加载插件:fastestmirror

centos                                                                | 3.6 kB  00:00:00    

(1/4): centos/group_gz                                                | 155 kB  00:00:00    

(2/4): centos/filelists_db                                            | 2.9 MB  00:00:00    

(3/4): centos/primary_db                                              | 2.8 MB  00:00:00    

(4/4): centos/other_db                                                | 1.2 MB  00:00:00    

Determining fastest mirrors

元数据缓存已建立

[root@localhost ~]#

 

5)安装配置DHCP服务程序

[root@localhost ~]# yum -y install dhcp      #安装DHCP服务

在这里修改DHCP配置

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

 

  allow booting; allow bootp;

ddns-update-style interim;

ignore client-updates;

subnet 192.168.56.0 netmask 255.255.255.0 { #设置网段

     option routers 192.168.56.1; #设置网关

     option subnet-mask 255.255.255.0; #设置子网掩码

     option domain-name-servers 8.8.8.8; #设置dns服务器地址

     range dynamic-bootp 192.168.56.1 192.168.56.205; #IP地址租用的范围

     default-lease-time 21600; #默认租约时间

     max-lease-time 43200; #大租约时间

     next-server 192.168.56.254; #tftp服务器地址

     filename "pxelinux.0"; #tftp服务器根目录下面的文件名

}

 

[root@localhost ~]# systemctl restart dhcpd

[root@localhost ~]# systemctl enable dhcpd

Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service to /usr/lib/systemd/system/dhcpd.service.

[root@localhost ~]#

二、      配置TFTP服务程序

1)安装TFTP服务程序

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

在xinetd服务程序的配置文件中把disable参数改成no就可以了。保存配置文件并退出,然后重启xinetd服务程序,并将其加入到开机启动项中

[root@localhost ~]# vim /etc/xinetd.d/tftp

 

[root@localhost ~]#  systemctl start tftp.socket

[root@localhost ~]# systemctl start tftp.service

2)关闭防火墙

[root@localhost ~]# systemctl stop firewalld   #关闭防火墙

[root@localhost ~]# systemctl disable firewalld   #开机不自启

Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

3)关闭SELINUX

[root@localhost ~]# vim /etc/selinux/config

 

三、      安装配置SYSLinux服务程序

1)      安装SYSLinux服务程序

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

我们首先需要把SYSLinux提供的引导文件复制到TFTP服务程序的默认目录中,也就是前文提到的文件pxelinux.0,这样客户端主机就能够顺利地获取到引导文件了。

[root@localhost ~]# cd /var/lib/tftpboot/

[root@localhosttftpboot]#cp  /opt/centos/images/pxeboot/{vmlinuz,initrd.img} .

[root@localhosttftpboot]# cp  /opt/centos/isolinux/{vesamenu.c32,boot.msg} .

[root@linuxprobe tftpboot]# mkdir pxelinux.cfg

[root@linuxprobetftpboot]#cp /opt/centos/isolinux/isolinux.cfgpxelinux.cfg/default

默认的开机菜单中有两个选项,要么是安装系统,要么是对安装介质进行检验。既然我们已经确定采用无人值守的方式安装系统,还需要为每台主机手动选择相应的选项,未免与我们的主旨(无人值守安装)相悖。现在我们编辑这个default文件,把第1行的default参数修改为linux,这样系统在开机时就会默认执行那个名称为linux的选项了。对应的linux选项大约在64行,我们将默认的光盘镜像安装方式修改成FTP文件传输方式,并指定好光盘镜像的获取网址以及Kickstart应答文件的获取路径:

1 default linux

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

四、        安装配置vsftpd服务程序

1)        安装vsftpd服务程序

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

[root@localhost ~]# systemctl restart vsftpd

[root@localhost ~]# systemctl enable vsftpd

Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

,把目录中的光盘镜像文件全部复制到vsftpd服务程序的工作目录中。

[root@localhost ~]# cp -rvf /opt/centos/* /var/ftp/

五、        创建KickStart应答文件

[root@localhost ~]# cp ~/anaconda-ks.cfg /var/ftp/pub/ks.cfg

[root@localhost ~]# chmod +r /var/ftp/pub/ks.cfg

它总共只有46行左右的参数和注释内容,大家完全可以通过参数的名称及介绍来快速了解每个参数的作用。

首先把第5行的光盘镜像安装方式修改成FTP协议,仔细填写好FTP服务器的IP地址,并用本地浏览器尝试打开下检查有没有报错。然后把第21行的时区修改成上海(Asia/Shanghai),最后再把27行的磁盘选项设置为清空所有磁盘内容并初始化磁盘:

 

 

保存退出

六、        自动部署客户端主机

我们无人值守安装服务就配置完成了

这里把启动顺序,网络设置为第一启动。

 

 

完成。

原文地址:https://www.cnblogs.com/alley-wmq/p/12024627.html