我正在尝试创建一个“Magic DVD”,以便每次都能按照我们想要的方式安装和配置 RHEL 6.2。
以下是我一直尝试使用的过程,只是为了证明这个概念:
按预期手动执行安装。允许 anaconda 创建
/root/anaconda-ks.cfg
。将 RHEL 安装 DVD 的内容复制到我的硬盘上的目录中。
mkdir -p /home/derp/RHEL/diskFiles
cp /media/RHEL_6.2\ i386\ Disc\ 1/* /home/derp/RHEL/diskFiles
移至/root/anaconda-ks.cfg
所述目录的顶层:
cp /root/anaconda-ks.cfg /home/derp/RHEL/diskFiles/ks.cfg
使用适当的命令创建一个新的 ISO 文件。(摘自此链接。
cd /home/derp/RHEL
mkisofs -o file.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T diskFiles/
从这一点来看,应该很简单:
- 将文件刻录到磁盘(或者,在这种情况下,将 VM 的“光驱”连接到 ISO 文件。)
- 启动机器。
- 当机器自动安装好时,你会喜极而泣。
问题是这样的:我重新制作的 ISO 可以正常启动和启动 anaconda,但是一旦它到达那里,什么都没发生。我对自己错过的内容感到困惑——它看起来与我找到的答案非常相似这里据我了解,该anaconda-ks.cfg
文件应该执行与我构建系统时执行的完全相同的安装。我添加到该文件中的唯一内容是命令,autostep --autoscreenshot
这样我才能看到它在做什么。
我做注意到一些分区命令被注释掉了,但我搞不清楚这是否是导致问题的原因。从重新制作的 ISO 正确启动这一事实来看,我认为我搞砸了文件ks.cfg
和/或没有指定我需要的启动参数。我粘贴了ks.cfg
以下内容:
#version=DEVEL
autostep --autoscreenshot
install
cdrom
lang en_US.UTF-8
keyboard us
network --onboot no --device eth0 --noipv4 --noipv6
rootpw --iscrypted $6$CLfKLztawb7ZJq.O$d9iWhj6/SC..72WZFOtiy6t90DfTkTGZ9xgJ/8Cy.xKVNLlv6tmqf73uxeP0mvZT481kvyQzDi7uLon5fUAAw/
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone --utc America/Los_Angeles
bootloader --location=mbr --driveorder=sda --append=" rhgb crashkernel=auto quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --all --drives=sda
#part /boot --fstype=ext4 --size=500
#part pv.008002 --grow --size=1
#volgroup vg_dbs01 --pesize=4096 pv.008002
#logvol /omnyx --fstype=ext4 --name=lv_omnyx --vgname=vg_dbs01 --size=81448
#logvol / --fstype=ext4 --name=lv_root --vgname=vg_dbs01 --size=8192
#logvol swap --name=lv_swap --vgname=vg_dbs01 --size=4064
#logvol /var --fstype=ext4 --name=lv_var --vgname=vg_dbs01 --size=8192
repo --name="Red Hat Enterprise Linux" --baseurl=cdrom:sr0 --cost=100
%packages
@base
@client-mgmt-tools
@core
@debugging
@basic-desktop
@desktop-debugging
@desktop-platform
@directory-client
@fonts
@general-desktop
@graphical-admin-tools
@input-methods
@internet-applications
@internet-browser
@java-platform
@legacy-x
@network-file-system-client
@office-suite
@print-client
@remote-desktop-clients
@server-platform
@workstation-policy
@x11
mtools
pax
python-dmidecode
oddjob
sgpio
genisoimage
wodim
abrt-gui
certmonger
pam_krb5
krb5-workstation
gnome-pilot
libXmu
%end
帮助将会受到高度感激。
答案1
您需要告诉安装程序执行 kickstart 安装。您可以通过以下两种方式之一执行此操作:
A. 当您看到安装程序屏幕类型linux ks=/ks.cfg
B 时。由于您正在滚动自己的媒体,您可以将媒体文件夹中linux
命名的文件中的标签更改为:isolinux.cfg
isolinux
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append initrd=initrd.img ks=/ks.cfg <-- EDIT HERE!
答案2
您需要将 kickstart 文件重命名为 ks.cfg