Linux之无人值守安装系统

发布时间:2022-07-03 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Linux之无人值守安装系统脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1. 无人值守安装技简介

1.1 PXE简介

        PXE(PRe-boot Execution environment,预启动执行环境)是由Intel公司开发的技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用tftp(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

        严格来说,PXE 并不是一种安装方式,而是一种引导方式。进行 PXE 安装的必要条件是在要安装的计算机中必须包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE协议可以使计算机通过网络启动。此协议分为 Client端和 Server端,而PXE Client则在网卡的 rom 中。当计算机引导时,BIOS把PXE Client调入内存中执行,然后由 PXE Client将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。DHCP 服务器会给 PXE Client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE Client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。此外,在 PXE Client 的 ROM 中,已经存在了 TFTP Client,那么它就可以通过 TFTP 协议到 TFTP Server 上下载所需的文件了。

1.2 PXE工作流程图

Linux之无人值守安装系统

1.3 无人值守安装系统架构及工作原理

        机器开机后, PXE BootROM(自启动芯片)获得控制权之前先做自我测试,然后以广播形式发出一个请求FIND帧。如果服务器收到工作站所送出的要求,就会送回DHCP回应,内容包括分配的IP地址,及pxe引导程序名称,以及下载的地址。否则,服务器会忽略这个要求。

        工作站收到服务器发回的响应后则会回应一个帧,以请求传送启动所需的文件。之后,将有更多的讯息在工作站与服务器之间作应答, 用以决定启动参数。

        BootROM由TFTP通讯协议从服务器下载开机映像, 这个映像就是系统的映象文件。工作站使用TFTP协议接收启动文件后,将控制权转交启动引导程序,引导操作系统,完成远程启动。

2. 无人值守系统搭建主要步骤

2.1环境搭建准备

1、步骤1F1a;

        在window系统下下载并安装VMware/Virtual Box,此处以VMware16.0为示例。

        为使得无人值守服务器的DHCP服务起作用,将VMware平台的网络工作在仅主机(Host-only)网络的DHCP服务关闭(如图1所示)。

Linux之无人值守安装系统

图1关闭仅主机(Host-only)网络的DHCP服务

2、步骤2:

        安装CentOS7虚拟机服务器端,并添加双网卡(如图2所示),网卡一设为NAT模式,用于共享主机的IP地址,方便在部署过程中访问外网并下载必要的软件服务;网卡而设为Host-only模式,用于与主机共享的专用网络,方便部署待部署的虚拟机。

Linux之无人值守安装系统

图2双网卡配置

3、步骤3:

        准备CentOS7虚拟机待部署端,只配置一个裸机,网卡设为Host-only模式,其余不作操作。

Linux之无人值守安装系统

图3待部署虚拟机的创建以及网卡设置

4、步骤4:

        查看服务器端网卡信息:

[root@localhost gec]# ifconfig

图4 查看CentOS7服务器端网卡信息命令

        复制网卡一配置并修改配置信息:

[root@localhost gec]# cd etc/Sysconfig/network-scripts
[root@localhost network-scripts]# cp -p ifcfg-ens33 ifCFg-ens37
[root@localhost network-scripts]# vim ifcfg-ens37

Linux之无人值守安装系统

图5配置静态网络

5、步骤5:

        重启网络服务查看网卡配置是否成功,此处网卡2已被正确配置,ens33网卡的IP地址与图5配置所示一致,即配置成功。

Linux之无人值守安装系统

图6配置后的网卡信息

2.2 CentOS7服务器部署DHCP服务

1、步骤1:

        下载DHCP并复制配置文件:

[root@localhost gec]# yum -y install dhcp
[root@localhost gec]# cp /usr/share/doc/dhcp-4.2.5/dhcp.conf.example /etc/dhcp/dhcp.conf
cp:是否覆盖"/etc/dhcp/dhcp.conf"? yes

图7下载DHCP并复制配置文件

2、步骤2:

        配置DHCP服务:

Linux之无人值守安装系统

图8配置DHCP服务

2.3 CentOS7服务器部署TFTP服务

1、步骤1:

        安装引导程序文件和TFTP服务:    

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

图9安装引导程序文件和TFTP服务

2、步骤2:

                复制引导程序到站点中:

[root@localhost gec]# cp /usr/share/syslinux/pxelinux.0 /VAR/lib.tftpboot

图10复制引导程序到站点

3、步骤3:

        配置TFTP服务:

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

Linux之无人值守安装系统

图11配置TFTP服务

2.4 CentOS7服务器部署VSftpd文件传输协议

1、步骤1:

        安装VSFTPD文件传输协议:

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

图12安装VSFTPD文件传输协议

2、步骤2:

        将镜像文件以只读方式挂载到centos7文件夹下:

Linux之无人值守安装系统

[root@localhost gec]# mount /dev/sr0 /var/ftp/centos7
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost gec]# DF -hT

图13挂载镜像文件

3、步骤3:

        把镜像中的系统内核和初始化文件放到站点中:

[root@localhost gec]# cd /var/ftp/centos7/images/pxeboot/
[root@localhost pxeboot]# cp initrd.img vMLinuz /var/lib/tftpboot/
[root@localhost pxeboot]# ls /var/lib/tftpboot/
inITrd.img    pxelinux.0    vmlinuz

图14将镜像中的系统内核和初始化文件放到站点

4、步骤4:

        在站点中配置启动菜单:

[root@localhost pxeboot]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
initrd.img    pxelinux.0    vmlinuz
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# cd pxelinux.cfg
[root@localhost pxelinux.cfg]# vim default

Linux之无人值守安装系统

图15配置启动菜单

2.5 CentOS7服务器部署kickstart无人值守安装

1、步骤1:

        安装kickstart无人值守工具:

[root@localhost pxeboot]# yum -y install system-config-kickstart

图16安装kickstart无人值守工具

2、步骤2:

        打开应用程序-系统工具-Kickstart,按如下所示图片进行配置。

Linux之无人值守安装系统

图17 设置Kickstart—基本配置

Linux之无人值守安装系统

图18 设置Kickstart—安装方法

Linux之无人值守安装系统

图19 设置Kickstart—引导装载程序选项

Linux之无人值守安装系统

图20 设置Kickstart—分区信息

Linux之无人值守安装系统

图21 设置Kickstart—网络配置

Linux之无人值守安装系统

图22 设置Kickstart—火墙配置

Linux之无人值守安装系统

图23 设置Kickstart—安装后脚本

Linux之无人值守安装系统

图24 将以上配置程序信息保存

3、步骤3:

        由于在虚拟机中不能将图22的配置文档直接保存到文件系统/etc/ftp/目录下,故先将其保存在桌面上,使用终端命令将其移动。

[root@localhost ~]# cd /home/gec/Desktop/ && mv ks.cfg /var/ftp/

图25 移动文件

4、步骤4:

        查看系统的配置文件模板,将部分配置加入到图23所示的kickstart配置文件中:

[root@localhost ftp]# cd 
[root@localhost ~]#ls
anaconda-ks.cfg    initial-SETUP-ks.cfg
[root@localhost ~]#cat anaconda-ks.cfg

图26 查看系统配置文件

[root@localhost ftp]# cd /var/ftp/
anaconda-ks.cfg    initial-setup-ks.cfg
[root@localhost ~]# vim ks.cfg

Linux之无人值守安装系统

图27 将系统配置文件信息加入Kickstart配置文件中

5、步骤5:

        将ks.cfg文件地址加入引导程序:

[root@localhost ftp]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
initrd.img    pxelinux.0    pxelinux.cfg    vmlinuz
[root@localhost tftpboot]# cd pxelinux.cfg/
[root@localhost pxelinux.cfg]# vim default

Linux之无人值守安装系统

图28 将配置文件地址写入引导程序

2.6 CentOS7服务器开启相关服务

        关闭防火墙、增强功能,开启DHCP、TFTP、VSFTPD服务:

[root@localhost gec]# systemctl stop firewalld.service
[root@localhost gec]# setenforce 0
[root@localhost gec]# systemctl start dhcp
[root@localhost gec]# systemctl start tftp
[root@localhost gec]# systemctl start vsftpd

图29开启相关服务

2.7启动CentOS7待部署端虚拟机

        将待部署启动,在Host-only网络下,该虚拟机将自动安装系统。(由于此过程是连续的,截图不能获取到整个过程,仅以部分截图进行展示)

Linux之无人值守安装系统

图30成功加载配置文件

Linux之无人值守安装系统

图31系统正在安装

脚本宝典总结

以上是脚本宝典为你收集整理的Linux之无人值守安装系统全部内容,希望文章能够帮你解决Linux之无人值守安装系统所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。