0

我下载了 centos 6.4 dvd 的 1 和 2 第一个是 4.4 GB 第二个是 1.4 GB

显然第二个也有回购文件。

所以安装它们然后将它们复制到2个文件夹。

home/a/repo_dvd_1
home/a/repo_dvd_2

然后我将它们添加到回购

我只是编辑了 CentOS_Base.repo 或任何该文件的名称。

我将“启用= 0”添加到所有内容并将它们放在首位

[01]
name=01
baseurl=file:///home/a/repo_dvd_1
enabled=1
gpgcheck=0

[02]
name=01
baseurl=file:///home/a/repo_dvd_2
enabled=1
gpgcheck=0

然后我跑了

yum clean all

然后我尝试搜索php

yum search php

这是结果。

[root@localhost a]# yum clean all
Loaded plugins: fastestmirror, refresh-packagekit, security
Cleaning repos: 01 02
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@localhost a]# 
[root@localhost a]# yum search php
Loaded plugins: fastestmirror, refresh-packagekit, security
Determining fastest mirrors
01                                                       | 4.0 kB     00:00 ... 
01/primary_db                                            | 4.4 MB     00:00 ... 
file:///home/a/repo_dvd_2/repodata/repomd.xml: [Errno 14] Could not open/read file:///home/a/repo_dvd_2/repodata/repomd.xml
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: 02. Please verify its path and try again
4

2 回答 2

1

我知道这是一个旧线程,但我只是来这里寻找完全相同的解决方案。

过了一会儿,我自己弄明白了:如果你想从 DVD1 和 DVD2 制作一个 repo(而不用'createrepo'弄脏你的手),你只需要复制 DVD2 rpms(从它的'Packages'子目录)到复制 DVD1 rpms 的同一目录(如果您尊重树,则为“包”,您应该这样做)。就是这个:

  1. 将 DVD2 iso 挂载到一个目录中:

    mount -o loop CentOS-6.4-x86_64-bin-DVD2.iso somedir

  2. 将“Packages”子目录中的所有 rpm 复制到您首先复制 DVD1 包的目录(根据原始海报的帖子,“home/a/repo_dvd_1/Packages”):

    cp somedir/Packages/*.rpm home/a/repo_dvd_1/Packages

  3. 去掉 .repo 文件中的 DVD2 部分(原始帖子中的 [02]),只留下 DVD1 的 [01],因为 DVD1 中的 rpm 列表实际上包含 DVD2 的那些。

现在 DVD2 rpm 将从 DVD1 存储库中提取。

玩得开心!

于 2015-04-21T18:23:46.567 回答
0

我用另一种方式做到了。

例如,您可以安装两个图像

mkdir myrepo myrepo/dvd1 myrepo/dvd2; 
cd myrepo
mount -o loop CentOS-6.4-x86_64-bin-DVD1.iso dvd1
mount -o loop CentOS-6.4-x86_64-bin-DVD2.iso dvd2

并使用 createrepo 脚本创建自己的 repo 配置,但如果直接调用它,您将丢失组配置,在第一次 dvd 上查看文件 repomd.xml,有数据类型组部分,具有奇怪的 xml 文件名,其中包含组映射,因此您可以调用:

createrepo -g dvd1/repodata/2727fcb43fbe4c1a3588992af8c19e4d97167aee2f6088959221fc285cab6f72-c6-x86_64-comps.xml .

当然,请检查此哈希名称是否适合您的版本。这将重新扫描 iso 内容并在 myrepo 目录中创建 repodata,因此将 yum 指向它

这可能不是最整洁的解决方案,但对我来说是最快的方法。

于 2013-12-03T12:19:19.237 回答