###kickstart 自动安装脚本的制作###
KickStart是什么,有什么作用?
KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装
1.下载system-config-kickstart 和 httpd
yum install system-config-kickstart httpd -y
2.选择安装脚本的内容
system-config-kickstart
##编辑文件保存在/var/www/html,文件名称为ks.cfg,与yum源一起提供网络共享
开启kickstart的命令是: system-config-kickstart
kickstart基本配置,标记部分都为必选或者必填
kickstart安装方式,注意是执行一个全新的安装,应为我个人的源挂载在httpd服务下的,所以选择了HTTP,如果你的源也是这样的请保证可以访问
Boot Loader Options,标记部分为正确选项,表示安装一个新的引导
Prations Information分区信息,选项都选标记部分,后面需要添加三个分区,分别为boot(200)、swap(500)、和根/(剩下的所有)分区
网络配置选择DHCP方式,网络设备的话填写eth0就OK了,下面的(Authentication)认证不用选,默认就可以
防火墙的两个配置都disable掉就可以了
防火墙以后的选项都可以不用配置,但是为了演示某些配置的效果,我在安装完成之后配置了一个执行脚本用来配置虚拟机的yum源
在服务端开启httpd服务,关闭火墙
systemctl start httpd
systemctl stop firewalld
ksvalidator ks.cfg ##检测语法是否有误
vim /mnt/create_vm.sh
--extra-args ks=http://172.25.254.10/ks.cfg
有一个问题就是:刚开始用我的原来的create—vm.sh这个脚本的时候,会出现一个错误:如下图所示
因此,删除掉原来的--cdrom那一行,执行就成功了。
还有一个问题就是:刚开始没有在--extra-args 之前加 --location ,依旧会报错。
会出现的错误:包括上面的两个
1.磁盘分区错误
2. 引导问题(unknow error,一般也是因为引导的问题,所以我们在选择引导时一定要勾选所有选项的第一个,然后正确分区)