linux - createrepo 使用 --split 选项进行多 CD 分发

标签 linux centos installation

我正在尝试创建自定义的 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 结合使用会发生什么。我认为使用 --splitcreaterepo 我正朝着正确的方向前进,但我不太确定。

关于如何正确构建多 CD 发行版的任何想法?我似乎找不到任何好的例子。

* 问题解决后*

createrepo --split 将查看构建目录中的所有 RPM,并将在安装的 disc1 上的 repodata 目录中创建适当的 XML 文件。这些 XML 文件会在安装过程中告诉 anaconda 它们在什么安装盘上,并据此知道要您插入某个 CD。确保第 4 行(Disc# 行)上的 .discinfo 文件已针对光盘 1 和 2 正确设置。

我最终只使用 pkorder 脚本来决定我应该在 disc2 上放置什么 RPM。我还注意到,CentOS 6 没有 pkg​​order 脚本,所以我以后将无法使用它。届时可能必须重新安装我的安装才能使用答案中描述的其他脚本。

最佳答案

我不确定,但我相信您需要使用 pkgorder 然后使用 splittree.py 脚本来生成拆分 RPM 目录,然后您可以运行 createrepo--split 模式跨越它们,然后运行 ​​buildinstall/etc。在每个 RPM 目录/等等。按顺序。

关于linux - createrepo 使用 --split 选项进行多 CD 分发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28836160/

相关文章:

git 初始化 : Permission Denied

python - 不能用pip安装elementtree

windows - 安装程序需要区分 Vista 和 XP

c# - 存储 Wix 安装程序中用户输入的数据

linux - 语法错误 : "(" unexpected when sh a file

c - 添加 request_mem_region 后,我的驱动程序每次第一次访问都会失败,并显示 "busy"消息

linux - 如何在 Mint 中使用 bash 安装 Pycharm?以某种方式将图标添加到程序列表中

c++ - ACE 如何启用 IPv6

python - linux系统和本地网络上的socket.gethostbyaddr()

centos - Zimbra 阻止服务器网站加载?