yum 更新が機能しません (yum にキャッシュされたデータが不足しているため、続行できません)。

yum 更新が機能しません (yum にキャッシュされたデータが不足しているため、続行できません)。

yum経由でcentos 7にエントリを正常にインストールしました。その後、epel repo()をインストールしましたが、yum install epel-release常に次のエラーが発生し、その後は何もインストールできませんでした。

 One of the configured repositories failed (Unknown),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this:

 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

インターネットでたくさん検索しましたが、解決策が見つかりませんでした。一部は代理人から来るかもしれません。 yum.confにプロキシ情報を追加しましたが、失敗しました。

その後、epel repoを削除しても機能できることを確認し、システムからepel-repoを削除した後にインストールできます。

助けてください。この問題を解決するのに2日かかりました。

答え1

発見したように、epel-releaseパッケージが問題を引き起こしました。まだ行っていない場合:

# yum remove epel-release

次に、次のコマンドを使用してEPEL Repoをインストールします(wgetパッケージが必要)。

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

これにより、問題なくyumアップデートを実行できます。

答え2

新しいCentOS 7.6を使用しているときにこの問題が発生しました。

解決策は簡単です。

  • パッケージを削除しないでください。epel-release(既に削除した場合はインストールしてください。)
  • ファイルの編集/etc/yum.repos.d/epel.repo
  • 最初の部分([epel])で:
    • コメントmetalink=https://...
    • コメントを解除baseurl=http://...

これは私のために問題を解決しました。

答え3

/etc/resolv.conf私の場合のように、リポジトリのホストを知るためにDNSサーバーを追加する必要があります(Google DNSで十分です)。

cat /etc/resolv.conf

# Generated by NetworkManager

nameserver 192.168.1.128 # local DNS

nameserver 8.8.8.8

nameserver 8.8.4.4

答え4

私もこの問題に直面しました。この問題の根本的な原因は、Dockerイメージをビルドするとyumリポジトリにアクセスできないことです。そのため、kubernetesプロジェクトを進めているので、kubernetesクラスタのネットワークポリシーを変更する必要があります。

関連情報