yumとは
RedHat系ディストリビューションで利用されるパッケージ管理ツール。rpmの高機能版。ここでいうパッケージとはプログラム実行可能ファイル、ライブラリファイル、設定ファイルや、ドキュメントやマニュアルなどの事です。通常ディストリビューション毎にリポジトリが用意されており、ここに配備されているパッケージをyumコマンドを通じてアクセスする事になります。yumコマンドが動作するには以下ファイルが関連します。
- yum設定ファイル(/etc/yum.conf)
- リポジトリ設定ファイル(/etc/yum.repos.d/***.repo)
有効なリポジトリ一覧
リポジトリ設定ファイルを参照し、「enabled=1」のリポジトリを出力します。(出力件数は、次のgrepの結果と同じになります。 grep -r “enabled=1” /etc/yum.repos.d/*.repo )
yum repolist
全てのリポジトリ一覧
yum repolist all
パッケージの検索
上記repolistはリポジトリ設定ファイル内だけで完結する事に対し、searchサブコマンドは実際にディストリビューションが提供するリポジトリまで参照して検索します。
yum search 'package_name'
インストールしているパッケージの一覧
以下は現状インストールされているパッケージ一覧が出力される。yumコマンドでインストールしたものは独自のデータベースに登録して管理しています。そのため手動でアンインストールする場合は矛盾が発生するので注意が必要です。
yum list installed
listサブコマンドにはいくつかのパラメータがあります。
yum list | インストールされているパッケージと利用可能なすべてのパッケージを表示 (ディストリビューションが提供するリポジトリまで参照に行きます) |
yum list installed | インストールされているパッケージのみを表示。 (独自のデータベースを参照するだけでリポジトリまでの参照にはいかない) |
yum list available | 利用可能なパッケージのみを表示。(インストールパッケージは含まない) (ディストリビューションが提供するリポジトリまで参照に行きます) |
yum list updates | 利用可能なアップデートがあるパッケージのみを表示 (ディストリビューションが提供するリポジトリまで参照に行きます) |
パッケージインストール例
全ての問い合わせにyesと返答してインストール
yum -y install gcc
パッケージアンインストール例
インストール時と違って -y オプションはありません。
yum remove gcc
インストールしたパッケージのキャッシュをクリア
個人的にはこれまで必要性を感じるようになった事ありませんが、ディスクの解放という意味では有効ですね。
yum clean all --enablerepo='*'
[root@vm022 ~]# yum clean all --enablerepo='*'
81 ファイルが削除されました