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会短暂黑屏为正常情况

完成

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

相关推荐
apocelipes2 小时前
Linux c 运行时获取动态库所在路径
linux·c语言·linux编程
ABB自动化2 小时前
for AC500 PLCs 3ADR025003M9903的安全说明
服务器·安全·机器人
努力学习的小廉2 小时前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗3 小时前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
利刃大大3 小时前
【在线五子棋对战】二、websocket && 服务器搭建
服务器·c++·websocket·网络协议·项目
2301_793102493 小时前
Linux——MySql数据库
linux·数据库
vfvfb3 小时前
bat批量去掉本文件夹中的文件扩展名
服务器·windows·批处理·删除扩展名·bat技巧
jiunian_cn4 小时前
【Linux】centos软件安装
linux·运维·centos
藥瓿亭4 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
程序员JerrySUN4 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构