【发布时间】:2015-05-04 08:40:24
【问题描述】:
我正在尝试创建自定义的 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 一起使用会发生什么。我认为我使用 --split 和 createrepo 朝着正确的方向前进,但我不太确定。
关于如何正确构建多 CD 发行版的任何想法?我似乎找不到任何好的例子。
* 问题解决后*
createrepo --split 将查看构建目录中的所有 RPM,并将在安装的 disc1 上的 repodata 目录中创建适当的 XML 文件。这些 XML 文件将在安装过程中告诉 anaconda 他们在哪个安装光盘上,并据此知道要求您插入某个 CD。确保第 4 行(Disc # Line)上的 .discinfo 文件为光盘 1 和 2 正确设置。
我最终只使用 pkorder 脚本来决定我应该在 disc2 上放置哪些 RPM。我还注意到 CentOS 6 没有 pkgorder 脚本,所以我将无法继续使用它。那时可能必须重新安装我的安装才能使用答案中描述的其他脚本。
【问题讨论】:
标签: linux centos installation