一.kickstart自动安装脚本的作用
kickstart:用文件来记录所有安装过程中问题的答案,并让所有需要安装的主机自动读取,以上解决方案中记录系统安装过程中所有问题答案的文件叫kickstart脚本
二.实验环境
1.主机名称:foundation40
2.ip:172.25.254.40
3.火墙,selinux关闭
4.httpd服务开启
5.配置软件仓库能正常工作
三.kickstart自动安装脚本的制作
在rhel7系统中提供图形的kickstart制作方式
在rhel8中已经把图形的工具取消,并添加到rhn网络中
在rhel8中如果无法通过rhn网络制作kickstart,可以使用模板生成
操作步骤:
1.共享资源:
安装http服务:dnf install httpd -y
开启http服务:systemctl enable --now httpd
关闭防火墙:systemctl disable --now firewalld
setenforce 0 selinux调整为警告模式
创建文件专门放ks目录:mkdir /var/www/html/ks
mount /dev/cdrom /var/www/html/westos_8
测试资源共享:firefox http://172.25.254.20/westos_8
生成加密字符串: openssl passwd -6
安装ksvalidator命令:dnf install pykickstart-3.16.10-1.el8.noarch
共享资源的意义
在安装操作系统时,每个被安装的操作系统都要有安装资源
如果使用镜像安装,每个安装的系统都需要加载一个镜像
这样会浪费存储,通过网络来共享镜像中的资源,让安装系统的主机能通过
网络访问被共享的资源这样就可以解决多台主机需要多个镜像安装的问题
用模板自作kickstart
-
查看系统自动生成的ks脚本文件:ls ~
在已经装好的rhel8中,/root/anaconda-ks.cfg 就是安装当前系统时回答的所有问题的答案,生成的kickstart,此文件为kickstart模板 -
复制模板文件到ks目录:cp /root/anaconda-ks.cfg /var/www/html/ks/westos.cfg
-
编辑kickstart文件:vim /var/www/html/westos.cfg
修改文件权限: chmod 644 /var/www/html/westos.cfg
cat >> /etc/yum.repos.d/westos.repo <<EOF
[AppStream]
name=AppStream
baseurl=http://172.25.254.20/westos_8/AppStream
gpgcheck=0
[BaseOS]
name=BaseOS
baseurl=http://172.25.254.20/westos_8/BaseOS
gpgcheck=0
EOF
%end
ksvalidator /var/www/html/westos.cfg 检测westos.cfg语法
chmod 644 /var/www/html/westos.cfg
搭建dhcpd服务器
- 让被安装的主机可以获得ip来访问网络资源及kickstart文件
搭建方式: (详细内容在前面网络管理)
安装服务:dnf install dhcp-server.x86_64
切换目录:cd /usr/share/doc/dhcp-server/
复制模板文件到/etc/dhcp/: cp dhcpd.conf.example /etc/dhcp/dhcpd.conf
修改内容:改7-8,删除35,删除27-28,修改30-31
开启dhcp服务:systemctl enable --now dhcpd
测试
在系统安装基面选择
Install Red Hat Enterprise Linux 8.0.0 <---- 键
ks=http://172.25.254.20/westos.cfg <----键
查看效果