このトピックでは、Linux Elastic Compute Service (ECS) インスタンスで yum
コマンドが実行に失敗し、「HTTP Error 404 -Not Found Trying other mirror
」エラーメッセージが表示される問題の考えられる原因と解決策について説明します。
問題の説明
yum -y install XXX
、yum list
、yum search XXX
などの yum
コマンドが Linux ECS インスタンスで実行に失敗します。次のエラーメッセージのいずれかが表示される場合があります。
http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found
Trying other mirror.
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found
Trying other mirror.
考えられる原因
この問題は、次の理由で発生する可能性があります。
CentOS 6 リポジトリのアドレスは、サポート終了 (EOL) により削除されました。この問題を解決するには、リポジトリアドレスを変更します。
Yellowdog Updater Modified (YUM) リポジトリが正しく構成されておらず、想定どおりに解析できませんでした。この問題を解決するには、リポジトリベースリポジトリを変更します。
/etc/profile
ファイルに HTTP プロキシが構成されており、解析エラーが発生しました。この問題を解決するには、/etc/profile ファイルを変更します。centos-release パッケージが存在しなかったため、
$releasever
の URL 解析でエラーが発生しました。この問題を解決するには、CentOS-release パッケージをインストールします。
解決策
リポジトリアドレスを変更する
CentOS 6 はサポート終了 (EOL) に達しました。Linuxコミュニティのルールに従い、すべてのコンテンツが次の CentOS 6 リポジトリアドレスから削除されました:http://mirror.centos.org/centos-6/。Alibaba Cloud でデフォルトの CentOS 6 リポジトリを引き続き使用すると、エラーが報告されます。CentOS 6 の特定のインストールパッケージを使用するには、CentOS 6 リポジトリアドレスを変更します。詳細については、「CentOS 6 リポジトリアドレスを変更するにはどうすればよいですか?」をご参照ください。
ベースリポジトリを変更する
この例では、CentOS 7.4 を使用しています。他の OS および OS バージョンについては、Alibaba Cloud 公式イメージ Web サイト にアクセスしてください。
このエラーが報告された ECS インスタンスに接続します。
詳細については、「ECS インスタンスに接続する方法」をご参照ください。
既存のベースリポジトリをバックアップします。
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
新しいベースリポジトリをダウンロードしてインストールします。
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum
コマンドを実行して、コマンドが想定どおりに実行できるかどうかを確認します。
変更する/etc/profileWordPress アプリケーションをデプロイする:
ファイルを変更する
このエラーが報告された ECS インスタンスに接続します。
詳細については、「ECS インスタンスに接続する方法」をご参照ください。
次のコマンドを順番に実行して、インスタンスが ping できるかどうか、およびポート 80 がインスタンスで開いているかどうかを確認します。
インスタンスを ping できない場合は、ネットワークが切断されています。この場合は、ネットワークを確認して、再試行してください。
インスタンスを ping できる場合は、次の手順に進みます。
ping mirrors.cloud.aliyuncs.com telnet mirrors.cloud.aliyuncs.com 80
YUM リポジトリにアクセスできるかどうかを確認します。
curl http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml -v
次のような出力が返され、インスタンスに HTTP プロキシが構成されています。
/etc/profile
環境変数ファイルを変更します。/etc/profile
ファイルを開きます。vim /etc/profile
i
キーを押して挿入モードに入り、HTTP プロキシの前にシャープ記号 (#
) を追加して、プロキシ構成をコメントアウトします。ビジネス要件に基づいてプロキシ構成を変更することもできます。ファイルを変更した後、
Esc
キーを押し、:wq
と入力し、Enter
キーを押してファイルを保存して閉じます。変更を有効にします。
source /etc/profile
yum
コマンドを再度実行して、コマンドが想定どおりに実行できるかどうかを確認します。
centos-release パッケージをインストールする
この例では、CentOS 7.4 を使用しています。他の OS および OS バージョンについては、Alibaba Cloud 公式イメージ Web サイト にアクセスしてください。
このエラーが報告された ECS インスタンスに接続します。
詳細については、「ECS インスタンスに接続する方法」をご参照ください。
必要な centos-release パッケージをダウンロードしてインストールします。
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm rpm -ivh centos-release-7-9.2009.0.el7.centos.x86_64.rpm
yum
コマンドを実行して、コマンドが想定どおりに実行できるかどうかを確認します。