如何在没有网络的情况下使用 kickstart 文件 ks.cfg 在虚拟机上安装 CentOS 7(离线模式)

如何在没有网络的情况下使用 kickstart 文件 ks.cfg 在虚拟机上安装 CentOS 7(离线模式)

我正在尝试使用 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 映像的根目录中,然后它“就可以正常工作”。

相关内容