kickstart自动安装脚本

当安装Linux操作系统时,安装过程会需要回答很多关于设定的问题 这些问题必须手动选择,否则无法进行安装。当只安装1台Linux系统,手动选择设定工作量比较轻松,当安装多台Linux,这些设定需要重复多次,这些重复动作是效率低下的操作。这时,使用kickstart可以进行自动化批量安装。

一、kickstart基本配置

1、准备工作

kickstart 需要安装图形化界面

安装GUI

yum groups install "Server with GUI"

启动GUI

init 5

准备光盘镜像

关闭vmware dhcp功能

关闭防火墙

systemctl stop firewalld

关闭selinux

setenforce 0

2、下载软件

下载图形制作工具

yum install system-config-kickstart

启动图形制作工具

system-config-kickstart

3、具体配置

此步骤按情况配置(此处仅为举例)

有时无法加载需要在脚本中手动添加

添加方式

此处脚本随意编写,编写仅便于验证环境

保存路径可以自定义

修改脚本后可以使用ksvalidator ks.cfg进行语法检测

4、配置Web服务器

下载httpd

yum install httpd

开机启动

systemctl enable --now httpd

编辑默认配置文件

cd /var/www/html/

将上面生成的ks.cfg文件拷贝到/var/www/html/

cp /root/ks.cfg /var/www/html/

由于选择http的安装方法,需要配置Web服务器

创建目录

mkdir /var/www/html/rhel7

将本地挂载镜像链接到rhel7下

ln -s /CangKu/* /var/www/html/rhel7

重启httpd

systemctl restart httpd

5、配置DHCP

安装dhcp

yum install dhcp

拷贝模板便于配置

(\cp -f拷贝覆盖不提醒)

\cp -f /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

修改配置文件

重启服务

systemctl restart dhcpd

6、安装及验证

导入光盘镜像

启动服务器

于此界面点击TAB键,在行尾添加ks=http://(资源路径)

等待安装

(如果遇到问题会有[!]提醒)

安装完成

二、系统全自动配置

原理:通过在dhcp发送的软件包中增加引导文件位置,使得服务器根据引导文件中的内容完成系统初始化。需要使用PXE

PXE的全称是preboot execute environment是一种允许计算机通过网络启动操作系统而无需本地存储设备的技术。

1、下载软件

yum install syslinux
yum install tftp-server

2、具体配置

启动tftp

systemctl enable --now tftp

查询软件包有哪些目录

rpm -ql tftp-server

tftp配置文件

拷贝pxelinux.0 以及光盘系统安装文件到tftp

在/var/lib/tftpboot下创建 pxelinux.cfg目录配置default文件

mkdir /var/lib/tftpboot/pxelinux.cfg
cp /var/lib/tftpboot/isolinux.cfg pxelinux.cfg/default

编辑default文件

含义:等待时间,600是60s,是将60s分为100份,1为0.1s

30为3s

修改具体表现如下,由于是全自动安装,需要适当缩短等待时间

修改光标默认位置

默认在选项2需要删除加到选项1上

编辑dhcp配置

vim /etc/dhcp/dhcpd.conf

修改dhcp文件后需要systemctl restart dhcpd

3、验证

通过加减改变系统启动优先顺序

注意:由于在 default中选择了quiet会短暂黑屏为正常情况

完成

注意:安装完成后再次启动需要改变顺序优先硬盘启动

相关推荐
学嵌入式的小杨同学1 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
EverydayJoy^v^1 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
syseptember1 小时前
Linux网络基础
linux·网络·arm开发
b***25111 小时前
电池组PACK自动化生产线的关键流程与核心优势
运维·自动化
zl_dfq1 小时前
Linux 之 【多线程】(线程的概念、Linux中的线程、页表)
linux
郝亚军2 小时前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu
曦云沐3 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
哲伦贼稳妥3 小时前
职场发展-遇到以下情况请直接准备后手吧
运维·经验分享·其他·职场和发展
带土13 小时前
10. .out文件
linux
Exquisite.4 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql