无法使用 Yum 本地存储库安装或更新软件包

无法使用 Yum 本地存储库安装或更新软件包

我有一台 Red Hat 6.2 服务器,它处于一个隔离环境中,我需要使用 Yum 进行更新。我尝试从ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/os/(这是默认 yum repo 文件的默认 URL)并执行以下步骤。

  1. 删除 /etc/yum.repos.d 下的所有存储库
  2. 使用以下信息创建了一个新的 repo 文件

    [localrepo]
    name=LocalRepository
    baseurl=file:///YUMREPO/SRPMS/Packages<BR>
    gpgcheck=0
    enabled=1
    

当我执行 yum update 时,它​​第一次正确地下载了存储库数据库,但是它没有更新任何新内容。当我尝试安装任何其他软件包(例如 vsftpd)时,它也无法安装,提示未找到软件包,但 rpm 文件存在于我配置为存储库的文件夹中。

# yum 安装 vsftpd

Loaded plugins: product-id, security, subscription-manager<BR>
Updating certificate-based repositories.<BR>
Setting up Install Process<BR>
No package vsftpd available.<BR>
Error: Nothing to do<BR>

# ls -ltr /YUMREPO/SRPMS/软件包/vsftpd

-rw-r--r-- 1 root root 238016 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-11.el6.src.rpm
-rw-r--r-- 1 root root 239565 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-11.el6_4.1.src.rpm
-rw-r--r-- 1 root root 239801 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-12.el6_5.1.src.rpm
-rw-r--r-- 1 root root 240907 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-13.el6_6.1.src.rpm
-rw-r--r-- 1 root root 229354 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-6.el6.src.rpm<BR>
-rw-r--r-- 1 root root 242118 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-14.el6.src.rpm<BR>
-rw-r--r-- 1 root root 243417 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-14.el6_7.1.src.rpm<BR>
-rw-r--r-- 1 root root 230778 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-6.el6_0.1.src.rpm<BR>
-rw-r--r-- 1 root root 231280 Apr 14 08:18 /YUMREPO/SRPMS/Packages/vsftpd-2.2.2-6.el6_2.1.src.rpm<BR>

我已经尝试使用createrepocreaterepo -d(用于 sqllite db),但没有任何效果。Yum 无法安装文件夹中可用的任何 RPM。

当我执行 repolist 时,会显示存储库详细信息,但 Repo-pkgs 和 Repo-size 为零,而 Repo-exculded 下显示的计数与存储库目录中的 rpm 文件数量相同。

# yum -v repolist

Not loading "rhnplugin" plugin, as it is disabled<BR>
Loading "product-id" plugin<BR>
Loading "security" plugin<BR>
Loading "subscription-manager" plugin<BR>
Updating certificate-based repositories.<BR>
Config time: 0.036<BR>
Yum Version: 3.2.29<BR>
Setting up Package Sacks<BR>
pkgsack time: 0.006<BR>
Repo-id      : localrepo<BR>
Repo-name    : LocalRepository<BR>
Repo-revision: 1460764382<BR>
Repo-updated : Sat Apr 16 08:13:29 2016<BR>
**Repo-pkgs    : 0<BR>
Repo-size    : 0<BR>**
Repo-baseurl : file:///YUMREPO/SRPMS/Packages<BR>
Repo-expire  : 21,600 second(s) (last: Sat Apr 16 08:13:41 2016)<BR>
**Repo-excluded: 6,575**<BR>

我只想配置 YUM 存储库以更新软件包并安装新组件。出于安全考虑,CD 和对互联网或任何其他网络的访问被阻止。在这种隔离的网络中,我们只能使用授权的 USB 磁盘来复制 RPM 软件包。/YUMREPO是正在使用的 USB 磁盘的挂载位置。

答案1

您引用的 ftp 位置仅包含要重新编译的源。Red Hat 不发布编译的更新,因为您需要为它们付费。这是他们的商业模式。

您可以使用 CentOS 系统。或者最好为所有独立系统支付 Red Hat 支持费(他们积极开发开源项目,因此给他们钱是一件好事),安装一个能够连接到互联网的独立系统,将系统订阅到 Red Hat,并使用该系统将 rpm 文件下载到 USB 存储(而不是 src.rpm 文件!)。Red Hat 将提供如何订阅的说明。

相关内容