如何为 CentOS 7.3 添加默认 yum 存储库?

如何为 CentOS 7.3 添加默认 yum 存储库?

我已经在我的服务器上安装了 CentOs 7 并由于一些未知的原因意识到(至少对我来说),默认的 yum 存储库不起作用。

例如我尝试过yum install vim但得到了

加载的插件:fastestmirror

配置的存储库之一失败(未知),并且 yum 没有足够的缓存数据来继续。此时 yum 能做的唯一安全的事情就是失败。有几种方法可以“修复”这个问题:

 1. Contact the upstream for the repository and get them to fix the problem.

 2. Reconfigure the baseurl/etc. for the repository, to point to a working
    upstream. This is most often useful if you are using a newer
    distribution release than is supported by the repository (and the
    packages for the previous distribution release still work).

 3. Run the command with the repository temporarily disabled
        yum --disablerepo=<repoid> ...

 4. Disable the repository permanently, so yum won't use it by default. Yum
    will then just ignore the repository until you permanently enable it
    again or use --enablerepo for temporary usage:

        yum-config-manager --disable <repoid>
    or
        subscription-manager repos --disable=<repoid>

 5. Configure the failing repository to be skipped, if it is unavailable.
    Note that yum will try to contact the repo. when it runs most commands,
    so will have to try and fail each time (and thus. yum will be be much
    slower). If it is a very temporary problem though, this is often a nice
    compromise:

        yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true

找不到存储库的有效基本 URL:addons/7

我在网上搜索以了解问题所在,但找不到任何信息。所以我决定我应该添加默认存储库,这些存储库应该是我自己默认添加的。

但我不知道怎么做。

那么有没有办法做到这一点并使 yum 工作呢?

我下载CentOs 7的链接:

http://mirror.teklinks.com/centos/7.3.1611/isos/x86_64/CentOS-7-x86_64-Everything-1611.iso

编辑2

考虑到我的 CentOS 版本,通过清理所有存储库并从此处添加新存储库,错误消失了:

# yum clean all

# rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# rpm -Uvh http://dl.atrpms.net/all/atrpms-repo-7-7.el7.x86_64.rpm

# rpm -Uvh http://repo.webtatic.com/yum/el7/webtatic-release.rpm

但现在通过运行yum install vim我得到:

加载的插件:fastestmirror

从缓存的主机文件加载镜像速度
* epel: ftp.riken.jp
* remi-safe: rpms.remirepo.net
* webtatic: uk.repo.webtatic.com
没有可用的 vim 软件包。
错误:无事可做

答案1

您忽略了添加默认的 CentOS 7.x 存储库,这可能就是您遇到问题的原因。顺便说一句,您可以通过获取另一个 RPM 来解决此问题:

$ rpm -ivh http://mirror.centos.org/centos/7/os/x86_64/Packages/centos-release-7-6.1810.2.el7.centos.x86_64.rpm

笔记:您可以通过查询来了解要获取的 RPM,rpm以查看给定文件提供的 RPM。在我们的例子中这些文件:

$ rpm -qf /etc/yum.repos.d/CentOS-* | sort -u
centos-release-7-6.1810.2.el7.centos.x86_64

一旦我们重新安装此 RPM,它将刷新 .repo 下的基本存储库文件/etc/yum.d。如果我们不知道下载的 URL,我们可以再次查询 RPM 来查找。

首先记下 RPM 的名称:

$ rpm -qi centos-release-7-6.1810.2.el7.centos.x86_64 | grep Name
Name        : centos-release

然后搜索pkgs.org对于这个短名称,它将引导您到我在上面的命令中显示的 URL rpm -ivh ...

笔记:相同的步骤适用于 CentOS 7.3 或您当前使用的任何 CentOS 版本。

答案2

配置存储库源的文件位于

/etc/yum.conf
/etc/yum.repos.d/*

验证这些文件是否具有正确的存储库链接。特别是其中的一个/etc/yum/repos.d

您可能需要 sudo 访问权限才能编辑它们。它们相当于/etc/apt/sources.list基于 Debian 的系统

相关内容