
NATを使用してVirtualBoxでCentOS 6.6を実行しています。プロキシを使用し、仮想マシンがインターネットと通信するようにプロキシ設定を構成しました。
yum経由で何かをインストールしたりyumアップデートを実行しようとすると、次のエラーが発生します。
# yum update
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Update Process
Determining fastest mirrors
epel/metalink | 6.0 kB 00:00
* epel: dl.fedoraproject.org
* extras: linux.cc.lehigh.edu
* updates: centos.sonn.com
base | 3.7 kB 00:00
base/primary_db | 4.6 MB 00:00
file:///var/ftp/pub/repos/OS/CentOS/6.6/x86_64/os/repodata/repomd.xml: [Errno 14] Could not open/read file:///var/ftp/pub/repos/OS/CentOS/6.6/x86_64/os/repodata/repomd.xml
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: centos-base. Please verify its path and try again
/var/ftp/... のパスが存在しないためにパスを作成しましたが、唯一の変更は、エラーがファイルアクセスエラーから repomd.xml ファイルが破損しているというエラーに切り替えられたことです。yum install <package>
私の家に行こうとすると--disablerepo=<every repo except epel>
動作します。
ここで何が起こっているのか知っている人はいますか?
答え1
CentOS にはローカルストレージが構成されています。でリポジトリを編集する必要があります/etc/yum.repos.d
。ここサンプルです/etc/yum.repos.d/CentOS-bas.repo
答え2
メタデータファイルのクリーンアップ(すべてのrepomd.xml
ファイル):
# yum clean metadata
それからもう一度やり直してください。かつてインターネットでパッケージを探しているかどうかを確認するためにファイルを/var/ftp
チェックしていたようです。/etc/yum.repos.d/CentOS-Base.repo
ファイルには少なくとも次の内容が必要です[base]
。[updates]
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.cc.ltgc.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
このmirrorlist
行はコメントアウトされませんでした。
答え3
ローカルリポジトリを探していることを思い出した他のポスターのおかげで、EPELリポジトリ設定は(何らかの理由で)centos-baseリポジトリ設定をオーバーライドするローカルファイルパスを使用するように設定されていることがわかりました。私はこれを削除し、今すべてがうまくいきます。