Linux、特にRed HatやFedoraベースのディストリビューションを使っているなら、 yumコマンドはご存知でしょう。パッケージ管理、つまりアプリのインストール、アンインストール、ダウングレードには、yumが定番です。しかし、時々予期せぬ事態が発生し、「yumコマンドが見つかりません」というエラーが表示されることがあります。これは非常にイライラするものです。通常、システムがコマンドを全く見つけられないことを意味し、yumに慣れている人にとっては必須のコマンドなので、これは困ったものです。システムによっては、特にシステムをアップグレードした場合や、最小限のインストールの場合に、このエラーが予期せず発生することがあります。幸いなことに、yumを復活させる、あるいは新しい方法(おそらく現在はdnf)に切り替えるのに役立ついくつかの解決策があります。
「Yum コマンドが見つかりません」エラーを修正する方法
行き詰まった時に試せる方法をいくつかご紹介します。すべての解決策が完璧とは限りませんが、パッケージ管理が可能な状態に戻せるかもしれません。それに、そもそもお使いのディストリビューションがyumをサポートしているかどうかを知ることも重要です。
あの厄介なメッセージの解決策:Linuxディストリビューションを確認してください
まず最初に役立つのは、適切なディストリビューションを使用しているかどうか、あるいはそうでなくても、yumが動作しない理由がわかることです。`yum`cat /etc/os-releaseや`apt`のようなコマンドを実行するとlsb_release -a、実際に実行しているディストリビューションがわかります。たとえば、UbuntuやDebianが表示された場合は、yumはそれらのディストリビューションには適していません。yumの代わりにaptを使用する必要があります。RHEL、CentOS、またはFedoraの場合は、yumがまだ使用できるか、dnfに置き換えられている可能性があります。
$ cat /etc/os-release
出力結果で、ID=ubuntuやのような行を探してくださいID=centos。これは、使用しようとしているツールがそもそも適切かどうかを判断するのに役立ちます。Debianベースのシステム(Ubuntu、Mintなど)を使用している場合は、代わりにaptコマンドに切り替えてください。
解決策その2:互換性のあるディストリビューションを使用している場合は、yumをインストールしてください。
RHEL ベースの OS (古い CentOS や RHEL など) を使用していて、yum が見つからない場合は、インストールする必要があるかもしれません。最小インストールやカスタム設定では、yum が省略されている場合があります。dnf後継の を使ってインストールを試みるか、yum運が良ければ yum 自体を使ってインストールすることもできます。次のコマンドを実行してください。
$ sudo dnf -y install yum
あるいは、システムがyum直接使用している場合は、少々陳腐に聞こえるかもしれませんが、次の方法を試してみてください。
$ sudo yum install yum
Fedora 22+ や RHEL 8+ のような新しいバージョンでは、これがデフォルトになっていることに注意してくださいdnf。一部の設定では、特にサポート終了の OS を使用している場合、パッケージが利用できないというエラーが発生する可能性があります。ええ、もちろん、Linux は必要以上に難しくする必要があります。
修正案3:yumの代わりにdnfを使用する
これは当たり前のことかもしれませんが、改めて述べておきます。yum が見当たらない場合、Fedora 22 以降または RHEL 8 以降ではdnf を使用してください。dnf は基本的に yum の代替です。したがって、以下のコマンドの代わりに、 dnf を使用してください。
$ yum install package_name
使用:
$ sudo dnf install package_name
これは、特にyumが段階的に廃止されて以来、標準的な方法となっています。ある環境では完璧に動作しますが、別の環境ではシステムが最新の状態であることを確認する必要があるかもしれません。しかし、通常はこれだけで済みます。
修正方法その4:PATHが正しく設定されているか確認してください
エラーが発生する原因は、システムが yum の場所を見つけられないことだけである場合もあります。このコマンドを実行すると、シェルがコマンドを検索する現在のディレクトリが表示されます。正常に動作している環境では、 、 、 などecho $PATHのパスが表示されるはずです。これらのパスが表示されない場合、または yum がこれらのディレクトリのいずれにも存在しない場合は、yum が見つからない原因となります。/usr/bin/usr/sbin
PATHを確認するには、以下を実行してください。
$ echo $PATH
標準パスが不足していることに気づいた場合は、以下を使用して追加してください。
$ export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
そして、もう一度yumを実行してみてください。PATHのリセットや設定ミスが原因でコマンドが消えてしまうことがあります。マシンによっては、この修正は些細なことのように思えるかもしれませんが、何時間も頭を悩ませる時間を節約できる可能性があります。
最後に一言:
正直なところ、yumをサポートしているはずのシステムにyumがインストールされていない場合は、dnfに切り替える方が良い場合が多いです。古いyumコマンドは新しいディストリビューションではほぼ非推奨となっており、最新のツールを使う方が長期的には楽になります。古いシステムの場合は、yum自体をインストールすることで問題が解決することもあります。
ただし、OSのバージョンによってはサポートが終了し、パッケージマネージャーが直接サポートされなくなる場合があることに注意してください。そのような場合は、より新しいバージョンへのアップグレードを検討してください。面倒ではありますが、Linuxはこうして進化し続けているのです。
まとめ
- 配布状況を確認してください
cat /etc/os-release。 - Debian/Ubuntu の場合は、aptに切り替えてください。
- RHEL/CentOS の場合は、yum をインストールしてみてください
dnf。 - 可能であれば、特に新しいディストリビューションでは、yumの代わりにdnfを使用してください。
PATH次のようなインクルードディレクトリを確認してください/usr/bin。
まとめ
yumが動作しない原因を突き止めるのは面倒な作業ですが、たいていはディストリビューションの種類やPATHの問題が原因です。dnfに切り替えたり、設定が正しいことを確認した上でyumを再インストールしたりすれば、ほとんどの問題は解決します。イライラする度合いは人それぞれですが、一度解決すれば、パッケージ管理は再びある程度管理しやすくなります。この記事が、誰かが何時間も頭を悩ませるのを避けるのに役立つことを願っています。