
Linuxコマンドの基本:パッケージ管理(CentOS):yumコマンド
ここでは、CentOSをはじめとするRed Hat系Linuxにおけるパッケージ管理の基礎として、yum
コマンドの位置づけと使い方を紹介します。yum
はrpm
コマンドを基盤としながら、依存関係解決やリポジトリ問い合わせなどの機能を付与し、実務の場で広く用いられています。

RPMとrpm
コマンドの限界
CentOSなどRed Hat系ディストリビューションでは、ソフトウェアはrpm
(Red Hat Package Manager)形式のパッケージファイルで管理されています。rpm
コマンドは、このパッケージをインストール・アンインストールする基本的機能を提供しますが、依存関係処理やリポジトリアクセスなどの高度な管理は手動で行う必要があり、現場での運用には不便です。
yum
コマンドの登場
yum
コマンドはrpm
コマンドをラップし、次のような点で運用管理を強化します。
- リポジトリへの問い合わせによるパッケージ取得
- 依存関係の自動解決
- 確認プロンプトや簡潔な操作によるユーザビリティ向上
これにより、システム管理者は複雑なパッケージ管理を容易かつ効率的に行えるようになりました。
yum
コマンドの基本構文と動作
yum
コマンドは、多くの機能(インストール、更新、アンインストール、検索など)を持つため、以下のような書式でコマンドを実行します。
【書式】yum [オプション] [コマンド] [パッケージ名 …]
- オプション:挙動を制御するための追加設定(例:
-y
で質問に自動的にYesと答えるなど) - コマンド:
install
やupdate
、remove
など、yum
が実行する具体的な操作 - パッケージ名:対象とするソフトウェア名
代表的なコマンド一覧
コマンド | 役割・詳細 | 使用例 |
---|---|---|
install | 指定したパッケージをインストールする。依存関係も自動解決。 | $ sudo yum install httpd |
update | インストール済みパッケージを最新バージョンに更新する。 | $ sudo yum update |
remove | 指定したパッケージをアンインストールする。 | $ sudo yum remove httpd |
search | 指定したキーワードを含むパッケージを検索する。 | $ yum search httpd |
info | 指定したパッケージの詳細情報を表示する。 | $ yum info httpd |
list | 利用可能なパッケージやインストール済パッケージ一覧を表示する。 | $ yum list or $ yum list installed |
リポジトリとの連携
yum
は実行時に設定済みのリポジトリへ問い合わせを行い、パッケージ情報や依存関係を自動的に取得します。そのため、コマンド実行時にはリポジトリへの接続メッセージが表示されることがあります。
リポジトリへの問い合わせ例(yum install httpd
)
[root@CentOS1 ~]# yum install httpd
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
依存性の解決をしています
...(省略)...
ポイント
リポジトリはパッケージが集められたオンライン上の倉庫であり、yum
はそこから必要なパッケージをダウンロードし、依存関係を解決してインストールや更新を行います。
yum
による依存関係の自動解決
パッケージはしばしば「あるパッケージをインストールする前に、別のパッケージが必要」という依存関係を持ちます。yum
コマンドは、この依存関係を自動的に解決し、必要なパッケージもまとめてインストール・削除します。
[root@CentOS1 ~]# yum install httpd
依存性の解決をしています。
→ トランザクションの確認を実行しています。
--> パッケージ httpd.x86_64 0:2.4.6-18.el7.centos をインストール
--> 依存性の処理をしています: httpd-tools = 2.4.6-18.el7.centos のパッケージ
...(省略)...
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
================================================================================
インストール中:
httpd x86_64 2.4.6-18.el7.centos updates 2.7 M
依存性関連でのインストールをします:
apr x86_64 1.4.8-3.el7 base 103 k
apr-util x86_64 1.5.2-6.el7 base 92 k
httpd-tools x86_64 2.4.6-18.el7.centos updates 77 k
トランザクションの要約
================================================================================
インストール 4 パッケージ
依存関係解決の例
yum install httpd
を実行すると、httpd
が依存するapr
、apr-util
、httpd-tools
など関連パッケージも同時にインストールされます。単独のrpm
コマンドではこれらを手動で用意する必要がありましたが、yum
なら自動で完結します。
パッケージ削除の基本コマンド
yum
コマンドでパッケージを削除するには、remove
またはerase
コマンドを使用します。
【書式】yum erase / remove <パッケージ名>
remove
とerase
は同等の機能を持つ別名であり、どちらを使用しても問題ありません。
代表的な削除コマンド例
コマンド | 役割・詳細 | 使用例 |
---|---|---|
yum remove <パッケージ名> | 指定パッケージおよび依存するパッケージを削除 | $ yum remove httpd |
yum erase <パッケージ名> | remove と同様、指定パッケージをアンインストール | $ yum erase httpd-tools |
依存関係の自動解決による一括削除
多くのパッケージは、別のパッケージに依存しています。あるパッケージを削除する際、依存しているパッケージも同時に削除しなければ整合性が保てません。
yum
は、この依存関係を自動的に解析・解決します。たとえば、httpd-tools
がhttpd
に依存している場合、httpd-tools
を削除しようとすると、yum
はhttpd
も同時に削除する提案を行います。
依存関係解決の例
# yum erase httpd-tools
依存性の解決をしています
...(省略)...
削除中:
httpd-tools.x86_64 ...
依存性関連での削除をします:
httpd.x86_64 ...
...(省略)...
このように、yum
が自動で依存関係を処理してくれるため、管理者は手動で順番にパッケージを削除する手間を省くことができます。
自動応答による削除作業の簡略化
パッケージ削除の際、yum
は「Is this ok [y/d/N]:」といった確認メッセージを表示します。このとき、-y
オプションを付けることで、すべての問い合わせに自動的にy
(Yes)で回答し、作業をスクリプト化したり手間を省くことが可能です。
自動的にy
で応答する例
# yum -y erase httpd-tools
これにより、確認なしでパッケージ削除を実行できます。
yum
を使う際の注意点
- root権限が必要
インストールや削除などシステムに変更を加える操作はroot
ユーザまたはsudo
権限が必要です。 - 確認プロンプトと
-y
オプション
インストールや削除時には、「Is this ok [y/d/N]:」といった確認が入ります。-y
オプションを使えば、この確認を省略して自動的にy
で答えることができ、スクリプトの自動化などに便利です。
まとめ
- Red Hat系Linuxディストリビューション(例:CentOS)では、
yum
コマンドを用いてパッケージのインストール・更新・削除を簡潔に行える。 yum
はrpm
コマンドの機能を拡張し、依存関係の自動解決やリポジトリ連携機能を提供。yum install
やyum remove
などの基本コマンドを使いこなせば、日常的なサーバ運用がスムーズになる。
yum
コマンドを理解し、活用することで、CentOS環境におけるソフトウェア管理が格段に容易になります。これが、パッケージ管理におけるyum
の重要な役割です。