Red Hat Enterprise Linux(RHEL)やCentOSで、「特定パッケージをアップデート対象外にする」方法を、例をあげて分かりやすく解説します。
yumコマンドのオプションに指定する方法
yumコマンドを実行する時、以下のように「–exclude パッケージ名」を指定して実行することで、アップデート対象外にすることができます。
sudo yum update --exclude=パッケージ名
以下は、「microcode_ctl」を対象外としてアップデートを実行する例です。
sudo yum update --exclude=microcode_ctl
「*」や「?」などのワイルドカードを用いたグロブパターンでパッケージ名を指定することもできます。以下は、「kernel*」にマッチするパッケージを対象外としてアップデートを実行する例です。
sudo yum update --exclude='kernel*'
/etc/yum.confに記述する方法
常に対象外としたいパッケージがあるなら、「/etc/yum.conf」に以下の行を記述することで設定できます。
exclude=パッケージ名 [...]
パッケージ名は、スペースで区切って複数指定できます。また、コマンドオプションで指定する場合と同様、「*」や「?」などのワイルドカードを用いたグロブパターンでパッケージ名を指定することもできます。
以下は、「microcode_ctl」と「kernel*」にマッチするパッケージを対象外とする例です。
exclude=microcode_ctl kernel*
これで、コマンドオプションを指定しなくても任意のパッケージをアップデート対象外とすることができます。
# /etc/yum.confで「exclude」に設定したパッケージを対象外にしてアップデート
sudo yum update
/etc/yum.confのexclude設定を無視する場合は、以下のように「–disableexcludes=all」を指定して実行します。
# /etc/yum.confの「exclude」設定を無視してアップデート
sudo yum update --disableexcludes=all
「all」ではなく、「main」などのリポジトリIDを指定することもできます。その場合、指定したリポジトリについてのみ、exclude設定が無視されます。
関連記事
コメント