在使用光盘安装CentOS系的Linux操作系统时使用的是一个叫做anaconda的软件,但是在安装系统之前磁盘上是没有操作系统的,也就没有程序的运行环境,所以在光盘上的某个目录下有一个编译好的内核和ramdisk以及init进程,由init启动anaconda。
Anaconda支持文本和图形两种安装界面,并把安装过程分为三个阶段:
- 安装前配置
- 键盘类型
- 语言
- 时区
- 管理员密码
- 磁盘及其分区方式
- 要安装的程序包
- 安装阶段
- 在目标磁盘创建分区、执行格式化
- 将选定的程序包安装至目标磁盘
- 生成bootloader
- 第一次启动
- 配置iptables
- 设置SELinux
- 配置core dump核心转储,将内存中的内容转储到磁盘上
这些操作都需要手动进行选择,但anaconda是支持读取配置文件实现自动化安装的,而它的配置文件就叫做kickstart。使用anaconda安装好的系统,在root用户的家目录下有一个anaconda-ks.cfg文件,这个文件记录了anaconda的所有配置,也可以理解为它就是一个kickstart文件。
Kickstart文件由一下几部分组成:
命令段:配置键盘、磁盘分区等,这些命令中有必备命令也有可选命令,具体可参看redhat官方的文档。
程序包段:以%packages开头以%end结尾,此之间的为要安装的的程序包,如果是包组则@gropename,不安装的程序包不写或-packagename。
脚本段:以%pre起始表示安装前执行的脚本,但因为这时的Linux环境是微缩版的,所以脚本应当尽量简单;以%post起始表示安装过后要执行的脚本,这些脚本是在安装后的完整的Linux环境中运行的。最后以%end结尾(可有可无)。
配置kickstart文件的方式有两种,一种是手动编辑配置,另一种是使用system-config-kickstart工具。不过要使用system-config-kickstart需要使用yum进行安装,好在CentOS的base源中就有。安装完成之后在Xshell下直接使用system-config-kickstart命令就可以了,它会启动一个GUI界面,这个界面和anaconda界面非常类似,通过之上的提示一步步配置就可以了。
这个命令也可以加载现有的kickstart文件做修改,在file菜单中选择就可以了。
配置好后我们如果要使用kickstart文件有两种方式:一种是将kickstart放置到光盘上,另一种是放到网络服务器上。放到网络服务器上的方法我会在以后的有关PXE和cobbler服务器的博客中写出,本文我们来使用制作引导光盘方式完成安装。
创建引导光盘:根据CentOS官方光盘,将提供启动安装过程的内容扣下来,剔除安装树。
4、将制作好的iso镜像装载到需要安装系统的主机中并配置好从光盘启动就可以了,因为我们的光盘是不提供安装树的,所以kickstart文件中的url和repo指令指定了网络上的文件服务器以提供安装树和程序包。
|