我正在尝试创建自定义 Centos 7。我能够创建 bootalbe ISO,但在安装时,安装摘要页面中的软件选择列表为空。步骤:-
- 下载 centos7 ISO。
- 将 ISO 提取到文件夹中。
- 添加了 ks.cfg 文件。
- 运行 createrepo 命令。
- 运行 mkiso 命令。
(有关详细步骤,请点击以下链接:- 我正在使用以下链接:- 如何在 CentOS 中创建自定义 ISO 映像 )
截图:-
答案1
我得到了答案。
你需要考虑以下几点。1
)comps.xml。2
)createrepo 命令。3
)ks.cfg 文件
4)isolinux.cfg
1)更新您的 comps.xml 并重新解决 rpm 的所有依赖关系。在 comps.xml 组中添加 rpm 名称。将您的 ks.cfg 文件保存在 iso 解压文件夹之外。
<comps>
<group>
<id>core</id>
<name>Core</name>
<description>Smallest possible installation.</description>
<default>false</default>
<uservisible>false</uservisible>
<packagelist>
<packagereq type="mandatory">basesystem</packagereq>
<packagereq type="mandatory">centos-logos</packagereq>
<packagereq type="mandatory">bash</packagereq>
.........
<packagereq type="mandatory">[CUSTOM_PACKAGE_NAME]</packagereq>
</packagelist>
<group>
<comps>
2)配置您的 ks.cfg 文件。创建 ks.cfg 文件并保存在 isolinux/ks/ks.cfg 位置
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
#rootpw myPassword
# System language
lang en_US
# Firewall configuration
firewall --disabled
# System authorization information
auth --useshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use text mode install(for graphical setup comment or remove below text word)
text
#cmdline
# SELinux configuration
#selinux --enforcing
selinux --disabled
# Do not configure the X Window System
skipx
# Network information
network --bootproto=dhcp --device=dhcp
# Reboot after installation
reboot
# System timezone
timezone Asia/Kolkata
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all
part /boot --fstype xfs --size=256
part swap --fstype swap --size=1024
part / --fstype xfs --grow --size=4000
reboot --eject
%packages
#below package name is you mention in comps.xml
@core
@core
%end
%post
mkdir /root/test/
%end
3)isolinux.cfg 文件存在于 isolinux 文件夹中
。您可以看到以下代码
label linux
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
以上代码执行默认的 ks.cfg 文件。用下面的代码替换它来配置你的自定义 ks 文件
label linux
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img inst.ks=hd:LABEL=CentOS\x207\x20x86_64:/ks/ks-noraid.cfg inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
4)创建 repo 命令。打开您的 iso 文件夹并执行以下命令。
createreop -g ../comps.xml
执行以下命令创建 iso
mkisofs -o /root/centos7_test.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "CentOS 7 x86_64" -R -J -v -T isolinux/. .