RPM パッケージの管理

2018年9月1日

はじめに

yum/rpm コマンドによる RPM パッケージの管理の方法。

yum によるパッケージの管理

インストールされているすべてのパッケージ名の表示

$ yum list installed

パッケージの検索

$ yum search <キーワード>

パッケージの情報の表示

$ yum info <パッケージ名>

ファイルを提供するパッケージの検索

$ yum provides <ファイル名>

パッケージのインストール

# yum install <パッケージ名>

パッケージのアンインストール

# yum remove <パッケージ名>

パッケージのアップデート

# yum update

あるいは、パッケージを指定する。

# yum update <パッケージ名>

依存関係を解決できないものは無視するには、--skip-broken オプションを用いる (うまくいくとは限らない)。

# yum update --skip-broken

アップデートのチェック

# yum check-update

アップデートの自動化

yum-cron を使う。

インストール

# yum install yum-cron.noarch

設定

/etc/yum/yum-cron.conf

#apply_updates = no
apply_updates = yes

サービスの開始

# service yum-cron start

※アップデートの結果 X が立ち上がらなくなったりするので、自動アップデートはよく考えて行う。特に、カーネルのアップデートには気を付けること。

アップデートの除外

たとえば、カーネルのアップデートを除外するには次のように設定する。

/etc/yum.conf

exclude=kernel*

バージョンの固定

パッケージのバージョンを固定するには、versionlock プラグインを用いる。

# yum install yum-plugin-versionlock

/etc/yum/pluginconf.d/versionlock.list にバージョン付きのパッケージ名を記述する。

履歴とアンドゥ

yum の実行履歴の確認

# yum history

詳しい情報

# yum history info <ID>

アンドゥ

# yum history undo <ID>

アンドゥは、指定した ID についてだけ行われるので注意。たとえば、ID 12、13、14 の順番に依存性がある場合に 12 をアンドゥしたい場合は、14、13、12 の順でアンドゥする。

リポジトリの確認

$ yum repolist all

キャッシュを消す

# yum clean all

リポジトリの問題でパッケージを参照できなくなった場合に試してみる。

rpm によるパッケージの管理

インストールされているパッケージのリストの表示

$ rpm -qa

パッケージの情報の表示

$ rpm -qi <パッケージ名>

パッケージに属するファイルリストの表示

$ rpm -ql <パッケージ名>

ファイルが属するパッケージの表示

$ rpm -qf <ファイル名>

RPM ファイルの情報の確認

RPM ファイルを less で開くとその情報を見ることができる。

$ less <RPM ファイル名>

パッケージの依存性の確認

# rpm -qpR <RPM ファイル名>

パッケージのインストール

# rpm -ivh <RPM ファイル名>

必要なパッケージを要求されることがある。パッケージの依存関係を無視してよいことがわかっている場合は、つぎのように無理やりインストールすることができる。

# rpm -ivh --nodeps <RPM ファイル名>

オプション "--nodeps" はアップデートやアンインストールでも使用できる。

パッケージのアップデート

# rpm -Uvh <RPM ファイル名>

パッケージのアンインストール

# rpm -e <パッケージ名>

同一の名前のパッケージをすべて削除するには、"--allmatches" オプションを使用する。

# rpm --allmatches <パッケージ名>

パッケージのインストールなどのテスト

# rpm -ivh --test <RPM ファイル名>