kickstart用户教程

通过运行以下内容,我们可以找到Kickstart的帮助信息:

$ rpm -qd pykickstart
/usr/share/doc/pykickstart-1.99.43.17/COPYING
/usr/share/doc/pykickstart-1.99.43.17/ChangeLog
/usr/share/doc/pykickstart-1.99.43.17/README
/usr/share/doc/pykickstart-1.99.43.17/kickstart-docs.txt   # Open this in vim.
/usr/share/doc/pykickstart-1.99.43.17/programmers-guide
/usr/share/man/man1/ksflatten.1.gz
/usr/share/man/man1/ksshell.1.gz
/usr/share/man/man1/ksvalidator.1.gz
/usr/share/man/man1/ksverdiff.1.gz

注意pykickstart 是一种写入/读取kickstart文件的软件包。

创建kickstart文件

kickstart文件自动由Rhel安装结束时由"anaconda安装程序"创建。
它保存在root用户的主目录中,名称为/root/anaconda-ks.cfg

创建kickstart文件有主要的3种方法:

方法1 - 执行普通的CentOS / RHEL安装

我们在最后一次安装CentOS时已经创建了一个KS文件的机会。
它是使用安装时选择的答案自动生成的。
我们应该在根目录下找到ks文件,它有名称"anaconda-ks.cfg"。
我们可以使用此文件作为模板来创建自己的kickstart文件。

方法2 - 从头开始写它

kickstart文件是一个简单的文本文件,很多它非常直观。
您可以设置一长串kickstart 选项。 有些设置是强制性的。 创建 kickstart 文件的最简单方法是使用现有的 kickstart 文件作为模板。

方法3 - 使用GUI工具

有一个非常方便的小工具,称为 system-config-kickstart,可让您使用简单的 GUI 创建自己的自定义 ks 文件。 首先你需要安装这个工具:

$ yum install system-config-kickstart

之后,我们可以通过命令行打开工具:

$ system-config-kickstart

或者从桌面转到:

应用程序=>系统工具=> Kickstart

这将导致以下GUI弹出:

注意:此GUI工具在很长时间尚未更新,因此一些强大的功能不可用,例如,指定逻辑卷的能力,而是该工具仅限于指定分区。

验证kickstart文件

如果手动编辑KS文件,请务必使用"ksvalidator"命令"检查kickstart文件是否有效。

$ vksvalidator /path/to/ks-file

此工具会发现错误喜欢:

keyxaboard us       # Notice "keyboard" has been mispelt.

但它不会识别与以下内容有关的错误:
URL路径
包名称或者组
%post或者%pre

ksvalidator是system-config-kickstart包的一部分。
因此,我们需要安装此软件包以使用ksvalidator。

如何在CentOS/RHEL 7上创建Kickstart文件

一旦您了解了kickstart文件的内容,就可以很容易地对其进行自定义。

kickstart文件分为4个部分。

  • 配置命令
  • 用于编写预安装脚本的预安装部分
  • 包部分
  • 后安装部分

这些部分需要按照上面顺序进行声明。

kickstart文件中的许多内容都是不言自明的,例如:

keyboard us              # This sets to keyboard to United States layout

包部分。
包部分列出了在OS安装过程中要安装的所有软件:

  • 以"@"符号开头的行,表示已安装的包组。
  • 没有符号的行表示已安装的单个包。
  • 以" - "符号开头的行,表示将从安装中排除的包。

默认情况下,kickstart文件只会创建root用户。
但是,我们可以通过插入以下条目在安装prcocess期间创建其他用户:

user --name=vagrant --plaintext --password vagrant --groups=vagrant,wheel

在此示例中,我们创建了一个名为"VAGRANT"的用户。

注意,出于安全用途,我们应该始终<l =>在插入kickstart文件之前加密密码。

我们可能会发现分区部分被注释出来,这是因为机器可以在HDD的数量/容量方面具有不同的硬件。
因此,作为预防措施,该位被注释出来,以便我们手动执行此操作。
但是,如果所有计算机都有相同的HDD设置(并且希望所有这些都有相同的分区/ LV设置),那么我们也可以取消注释该位。
一旦我们对kickstart文件感到满意,就可以开始使用KickStart自动化CentOS安装。

日期:2020-07-07 20:54:38 来源:oir作者:oir