我正在尝试使用 Kickstart 配置文件 ks.cfg 在我的 VM 上安装 CentOS 7。
我所需要的只是在我的虚拟机上安装 CentOS 7,无需使用网络(离线)。
我已经ks.cfg
借助在线链接创建了一个文件(见下文),但它对我来说不起作用。
以下是ks.cfg
我用于 CentOS 7 离线安装的脚本:
auth --enableshadow --passalgo=sha512
cdrom
graphical
firstboot --enable
ignoredisk --only-use=vda
keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8
network --bootproto=static --device=eth0 --gateway=172.30.#.# --ip=172.30.#.# --nameserver=8.8.8.8 --netmask=255.255.255.0 --ipv6=auto --activate
network --hostname=localhost.localdomain
rootpw --iscrypted "encrypted password"
services --enabled="chronyd"
timezone America/New_York --isUtc
user --groups=wheel --name=my_name --password="encrypted_password" --iscrypted --gecos="password"
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=vda
autopart --type=lvm
clearpart --none --initlabel
%packages
@^minimal
@core
chrony
kexec-tools
%end
我遇到的问题是,当我的机器处于启动菜单时,它不会自动安装 CentOS 7,我必须linux ks=cdrom:/ks.cfg
在 grub 菜单中写入。输入后,它显示
插入包含 ks.cfg 的 CDROM
然后安装开始,但卡在Centos Installation loading
窗口中。
此步骤后没有任何反应。
我正在使用 Kickstart 脚本来自动安装 Centos7,因此这个自动安装不需要进行任何手动配置;例如,在启动菜单中写入任何内容来启动安装。
我需要帮助来修改我的脚本以便在没有网络的情况下安装 CentOS。
我用来启动ks.cfg
文件的链接:
答案1
我知道这个问题已经有两个月了,但是我在研究 kickstart 时偶然发现了它,也许能够提供帮助。
当您给出该参数时,linux ks=cdrom:/ks.cfg
您是在告诉 grub 使用位于 cdrom 根目录下的名为 ks.cfg 的 kickstart 文件加载 linux。如果您使用的是标准安装 .iso,并且您尚未重新制作 .iso 以包含该文件,则它将失败。
一种可能的解决方案是将您的 ks.cfg 复制到可移动 USB 拇指驱动器,并使用连接到 VM 而不是主机的拇指驱动器启动您的 VM。一旦您遇到 grub 屏幕问题linux ks=hd:sdb1:/ks.cfg
。这将告诉您的 VM 从 Centos .iso 启动,但从 USB 驱动器的根目录(在本例中为 /dev/sdb)加载您的 kickstart 文件。
答案改编自https://linuxhint.com/install-centos-7-kickstart/作者 Shahriar Shovan
答案2
您似乎说得对,我已经有一段时间没做过这些事情了,但我建议构建自定义 CentOS 启动 DVD 映像。以下是 CentOS 7 的说明: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/installation_guide/sect-making-usb-media
ks.cfg 必须位于 cd/usb 映像的根目录中,然后它“就可以正常工作”。