在 Centos 6 DVD/CD 中添加自定义软件包

在 Centos 6 DVD/CD 中添加自定义软件包

我正在尝试将我的自定义构建包包含在 CentOS 安装程序 DVD/CD 中。我能够使用我的 Kickstart 文件重新制作 DVD。

自动化 kickstart 安装工作正常,但是,当我尝试将我的包包含在包目录中并更新 comp.xml 文件时,它不起作用。

我正在执行以下步骤。

将我的 RPM 添加到 iso/Packages/ 目录。[mypackage.rpm] 通过以下方式重新创建 repo db 文件

cd /path/to/iso/dir
discinfo=`head -1 .discinfo`
compdata=`find repodata -name *comps*xml`

createrepo -u "media://$discinfo" -g $compdata .

然后创建 ISO 映像

ISOFILE=$PWD.iso
PACKAGER="Your Name"
ISONAME="RHEL 6.3 x86_64 KVM Respin"
ISODATE="201/06/28"


mkisofs -r -R -J -T -v -no-emul-boot \
    -boot-load-size 4 \
    -boot-info-table \
    -V "$ISONAME" \
    -p "$PACKAGER" \
    -A "$ISONAME - $ISODATE" \
    -b isolinux/isolinux.bin \
    -c isolinux/boot.cat \
    -x "lost+found" \
    --joliet-long \
    -o $ISOFILE .

现在,当我在 kickstart 中使用我的包名称时

%packages --no-base
@core
mypackage

在安装阶段,我收到 Ananconda 错误,提示在 repo 中未找到“mypackage”。

我也尝试过手动编辑 comp.xml 文件,但没有帮助。

如果我能通过 %package 指令或其他方式安装 mypackage.rpm,我将不胜感激。

答案1

尝试删除‘-T’标志。

替换的 TRANS.TBL 通常不会覆盖现有的 TRANS.TBL,因此,您的新 RPM 包可能在文件系统中不可见。带有 -joliet-long 选项的 -J 应该足够了。

答案2

我明白了。

ISOFILE=$PWD.iso
PACKAGER="Chandan"
ISONAME="CentOS 6.5"
ISODATE="`date -I`"

sudo mkisofs -r -R -J -T -v -no-emul-boot \
    -boot-load-size 4 \
    -boot-info-table \
    -V "$ISONAME" \
    -p "$PACKAGER" \
    -A "$ISONAME - $ISODATE" \
    -b isolinux/isolinux.bin \
    -c isolinux/boot.cat \
    -x "lost+found" \
    --joliet-long \
    -o $ISOFILE .

相关内容