Kickstart 使用指南
记录在使用 Kickstart 时遇到的问题与困惑。
指南
- 如何获得 Kickstart 文件?
- 通过修改 /root/anaconda-ks.cfg 获得
- 通过 system-config-kickstart 生成 ks 文件
- 在已安装的 centos7.9 上安装 "yum install gdm" 或者 yum -y groups install "GNOME Desktop" ,建议只安装 gdm 即可。
- 在已安装的 centos7.9 上安装 yum install system-config-kickstart -y
- 然后在 windows 上安装 xmanager ,会得到 xstart工具(Linux 不用此操作)。打开这个工具,设置:
- 主机为 虚拟机的 ip
- 协议选择 ssh
- 添加 用户名和 密码
- 命令填写为 "system-config-kickstart"
- 然后点击 "运行"
- FAQ
- system-config-kickstart 不能选择要安装的软件包
- 将 /etc/yum.repos.d/CentOS-Base.repo 下的 [base] 改为 [development] ,然后需要重新启动 xstart
- 如何基于文字模式安装系统?
- 挂载了 iso 文件后,启动虚拟机,看到安装界面后按 esc 键
- 输入:
linux text ip=192.168.1.23 netmask=255.255.255.0 gateway=192.168.1.1 device=eth0
- system-config-kickstart 不能选择要安装的软件包
- 对上面两种方法获得的 ks 文件进行修改从而获得新的 ks 文件(需对 ks 语法非常熟悉,非常推荐)
- 参考:kickstart 语法介绍
- 在用 Kickstart 安装 centos 时哪些包是必须指定的?
- 如果是用 centos-minimal.iso 文件,建议选择:
%packages --ignoremissing --excludedocs --instLangs=en_US.utf8 @core @minimal wget curl gcc-c++ unzip vim-enhanced lsof net-tools bash-completion #如果在包名前面添加 - 则表示不安装此包,如: -vim 表示不安装 vim 包
- 知识扩展:不同参数对安装后软件包的影响
@core == @minimal == @core@minimal == --nobase@core == --nobase@minimal@core == --nobase@core --nodefaults
- 从上面得出
--nobase
对安装结果没用任何影响。 @core 和 @minimal
安装结果是一样的。@core --nodefaults
因为 Anaconda的作用没用生效--nobase --nocore @core --nodefaults == --nocore @core --nodefaults
- 如果是用完整包的 iso 文件(非 minimal),建议选择如下几个包组 (安装了 296 个包):
%packages --nobase --ignoremissing --excludedocs @base @compat-libraries @core @debugging vim wget curl gcc-c++ unzip vim-enhanced lsof net-tools bash-completion #如果在包名前面添加 - 则表示不安装此包,如: -vim 表示不安装 vim 包 %end
- 如果是用 centos-minimal.iso 文件,建议选择:
- yum 常见命令
- 显示安装包信息:yum info packagename
- 显示所有已经安装和可以安装的程序包:yum list
- 显示指定程序包安装情况:yum list package1 packagename
- 根据关键字查找安装包:yum search 关键字
- 显示程序组group1信息:yum groupinfo group1
- 清理/var/cache/yum的headers:yum clean headers
- 清理/var/cache/yum下的软件包:yum clean packages
- yum clean metadata
- yum clean all (= yum clean packages; yum clean oldheaders)
- 查看可使用的内核列表:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
- 查看当前默认内核启动项:
grub2-editenv list
- 更改默认启动内核项:
grub2-set-default 1
- 删除旧的内核:
yum remove $(rpm -qa | grep kernel | grep -v $(uname -r))
- 清理:yum clean plugins
- 清除缓存:
yum -y --enablerepo='*' clean all
- 获取所有软件包的列表:
rpm -qa --qf="%{N} \n" | sort > minimal_install
- 按大小对包进行排序,并尝试删除列表顶部的一些包:
rpm -qa --qf '%{size} \t%{name}\n' | sort -n > packages_sorted_by_size
- 检查什么占用了大部分磁盘空间:
du -mx /|sort -rn|head -35