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

完成

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

相关推荐
别挡39 分钟前
CentOS Stream 8中安装和使用 Docker
linux·docker·centos
人工智障调包侠1 小时前
Linux 目录介绍
linux·运维·服务器
愤怒的代码2 小时前
Centos使用阿里云镜像安装docker
linux·docker·centos
hakesashou2 小时前
python怎么输入中文
java·服务器·python
Java小白白同学3 小时前
Linux 硬盘扩容操作手册
linux·运维·服务器
牛像话3 小时前
`GLIBCXX_3.4.29‘ not found,升级至libstdc++.so.6.0.29解决问题,欧拉服务器
服务器·开发语言·c++
danplus3 小时前
wordpress发送邮件的方法?怎么配置功能?
服务器·python·api接口·邮件营销·邮件群发·edm邮件营销·smtp服务器
大白菜和MySQL3 小时前
keepalived和lvs高可用集群
linux·运维·lvs
好奇的菜鸟4 小时前
如何使用Docker快速启动Nginx服务器
服务器·nginx·docker
飞酱不会电脑4 小时前
云计算第四阶段----CLOUD 01-03
java·linux·云计算·bash