我正在尝试创建一个自定义的CentOS多CD安装。我们目前的发行量刚刚超过CD的规模。当然,你可以把它刻在DVD上。好吧,我们的客户使用的旧机器不支持DVD,所以我必须在2张CD上创建一个发行版。到目前为止,我已经使用--split选项找到了createrepo,但找不到任何关于如何使其正常工作的好例子。从createrepo的手册页:
--split
Run in split media mode. Rather than pass a single directory,
take a set of directories corresponding to different volumes in
a media set.
这是 createrepo 命令:
echo "Creating the repository..."
discinfo=`head -1 $OS_BASE/.discinfo`
createrepo -v --split -u "media://$discinfo" -g repodata/comps.xml $ISO $ISO_2
注意:ISO(光盘1)和ISO_2(光盘2)表示在执行createrepo之前将RPM复制到它们的构建目录。
CentOS 5的RPM目录:$ ISO / CentOS
CentOS 6的RPM目录:$ ISO / Packages
我遇到的问题是,我不确定将 - split 选项与 createrepo 一起使用后会发生什么。我认为我正朝着正确的方向前进,使用 - 分裂与 createrepo ,但我不太确定。
关于如何正确构建多CD分辨率的任何想法?我似乎无法找到任何好的例子。
*问题解决后
createrepo --split将查看构建目录中的所有RPM,并将在安装的disc1上的repodata目录中创建相应的XML文件。这些XML文件将在安装过程中告诉anaconda他们所在的安装光盘,并根据此信息要求您插入某张CD。确保第4行(Disc#Line)上的.discinfo文件已正确设置为光盘1和2.
我最终只使用pkorder脚本来决定我应该在disc2上放置什么RPM。我也注意到CentOS 6没有pkgorder脚本,所以我将无法继续使用它。此时可能需要重新修改我的安装,以使用答案中描述的其他脚本。
答案 0 :(得分:2)
我不确定,但我相信您需要使用pkgorder
然后splittree.py
脚本生成拆分RPM目录,然后您可以在createrepo
中运行--split
跨越它们的模式,然后运行buildinstall
/ etc。在每个RPM目录/ etc上。按顺序。