环境: VMware 14.0 Pro版 光盘镜像: CentOS-6.9-x86_64-minimal.iso ks文件生成器: kickstart 偶然接触一个kickstart, 学到自动安装系统, 先看一下原理: CentOS在VMware安装流程: 新建虚拟机 --> 挂载光盘镜像 --> 开始安装 --> 配置(包括地区, 语言, 时区, 键盘类型, root密码等等) --> 完成安装 --> 重启 --> 进入系统 在如上过程中, 对安装系统的配置是最耗时间的, 假如我们要安装100台主机, 难道要每一台都去配置吗? Come on, geek up and finish it.
什么是kickstart?
kickstart, 生成自动配置文件, 即应答文件,达到在安装系统时无须人工干预的目的
需要在图形界面下启动; 当然也可以在命令行下复制编辑 /root/anaconda-ks.cfg 文件, kickstart的最终目的也是生成一个这样的文件
安装方法:
yum -y groupinstall Desktop --> 如果你没有图形界面的话 startx & --> 启动图形界面, 并且在图形界面启动一个Terminal
yum -y install system-config-kickstart --> 安装kickstart, 是的, kickstart的安装包就叫做这么一长串名字 system-config-kickstart --> 命令行直接输入启动, 或者在图形界面下的左上角 Applications ->System Tools -> kickstart 启动, 即上图 Terninal 的上一个选项
配置ks应答文件, 图片太多, 所以做成了gif, 2s/帧, 共12张
现在有了ks文件, 我们保存为 /root/ks6_mini.cfg 作为安装CentOS 最小系统的应答文件好了, 但是这个文件要放在哪里呢?
跟安装镜像一块, 烧录在硬盘里, 更改grub目录菜单(后面会有提到);
刚好还有一台虚拟机上装了apache, 那么我们就直接甩到网页上好了;
centos 7 上的, 干净httpd服务, 啥也没有
systemctl start httpd sftp 192.168.142.142:/root/ks6_mini.cfg --> 获取ks文件到$pwdcp ks6_mini.cfg /var/www/html/
centos 7 的 ip 地址为: 192.168.142.128, 那么这个URL为:设置应答文件位置
新建虚拟机 -> 挂载正常安装光盘 -> 启动虚拟机, 进入安装界面 -> 按Tab键 -> 在内核设置后, 加上 ks=http://192.168.142.128/ks6_mini.cfg
回车, ok, 自动安装开始, 需要注意的是, ks使用http方式获取, 需要正确配置网卡以便能到达这个网址, 否则 安装过程中会停下来, 问你要这个地址的
上面这种安装方式, 只能称作为半自动安装, 因为需要手动干预输入ks位置 我们下面来制作一个, 无需输入ks位置, 可定制的启动引导盘
这是一个CentOS6.9最小安装光盘里的部分内容, 我们需要的就是他的 isolinux/ 下的所有文件
[root@centos6 myiso]# tree
.
├── CentOS_BuildTag
├── EFI
│ ├── BOOT
│ │ ├── BOOTX64.conf
│ │ ├── BOOTX64.efi
│ │ ├── splash.xpm.gz
│ │ └── TRANS.TBL
│ └── TRANS.TBL
├── EULA
├── GPL
├── images
│ ├── efiboot.img
│ ├── efidisk.img
│ ├── install.img
│ ├── pxeboot
│ │ ├── initrd.img
│ │ ├── TRANS.TBL
│ │ └── vmlinuz
│ ├── TRANS.TBL
│ └── updates.img
├── isolinux --> 启动盘所需要着手的地方
│ ├── boot.cat --> 类似MBR的存在
│ ├── boot.msg
│ ├── grub.conf
│ ├── initrd.img --> ramfs, 假根
│ ├── isolinux.bin -->光盘引导程序, 在mkisofs的选项中需要明确给出文件路径, 这个文件属于SYSLINUX项目
│ ├── isolinux.cfg -->isolinux.bin的配置文件, 当光盘启动后(即运行isolinux.bin), 会自动去找isolinux.cfg文件
│ ├── memtest
│ ├── splash.jpg -->光盘启动界面的背景图
│ ├── TRANS.TBL
│ ├── vesamenu.c32 -->是光盘启动后的安装图形界面, 也属于SYLINUX项目, menu.c32版本是纯文本的菜单
│ └── vmlinuz -->内核映像 ├── Packages
│ ├── acl-2.2.49-7.el6.x86_64.rpm
......