versionlockとは、「yum update」時にバージョンアップして欲しくないパッケージを事前にリスティングしておく事により、自動アップデート等によるパッケージのバージョンアップをロックする事ができます。
「versionlock」のインストール 【FedoraCore5 から Fedora10 / CentOS5 の場合】 # yum -y install yum-versionlock 【Fedora11 以降 / CentOS6 の場合】 # yum -y install yum-plugin-versionlock |
初期インストール時は、バージョンロックファイルリストがありません。
このまま、「yum」コマンドを実行すると以下の様にエラーとなってしまいます。
yum (ここでは、アップデートチェック)の実行 # yum check-update Loading "versionlock" plugin Loading "installonlyn" plugin Setting up repositories core [1/3] updates [2/3] extras [3/3] Reading repository metadata in from local files Reading version lock configuration Unable to read version lock configuration: [Errno 5] OSError: [Errno 2] そのようなファイルやディレクトリはありません: '/etc/yum/pluginconf.d/versionlock.list' |
空のバージョンロックファイルリストを作成します。
バージョンロックファイルリストの作成 # touch /etc/yum/pluginconf.d/versionlock.list 作成されたバージョンロックファイルリストの確認 # ls -l /etc/yum/pluginconf.d/versionlock.list -rw-r--r-- 1 root root 0 9月 6 13:08 /etc/yum/pluginconf.d/versionlock.list |
現在の「httpd」バージョンを確認
# rpm -qa httpd
httpd-2.2.0-5.1.2
アップデートモジュールがあるか確認
# yum check-update
Loading "versionlock" plugin
Loading "installonlyn" plugin
Setting up repositories
core [1/3]
updates [2/3]
extras [3/3]
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
Reading version lock configuration
「httpd」のバージョンが「2.2.2-1.2」で公開されている
httpd.i386 2.2.2-1.2 updates
現在導入されている「httpd」のバージョン「2.2.0-5.1.2」をロック(バージョンアップ対象外にする)させる。
# vi /etc/yum/pluginconf.d/versionlock.list
コマンド「rpm -qa "パッケージ名"」で出力された値(現行導入されているバージョン)を追加する。
httpd-2.2.0-5.1.2
複数指定したい場合は、次行に追加していきます。
アップデートしてみる
# yum -y update
Loading "versionlock" plugin
Loading "installonlyn" plugin
Setting up Update Process
Setting up repositories
core [1/3]
updates [2/3]
extras [3/3]
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
Reading version lock configuration
アップデートモジュールはないと判断された
No Packages marked for Update/Obsoletion
試しにリスティングにコメントアウトしてみる
# vi /etc/yum/pluginconf.d/versionlock.list
#httpd-2.2.0-5.1.2
再度アップデートしてみる
# yum update
Loading "versionlock" plugin
Loading "installonlyn" plugin
Setting up Update Process
Setting up repositories
core [1/3]
updates [2/3]
extras [3/3]
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
Reading version lock configuration
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for httpd to pack into transaction set.
httpd-2.2.2-1.2.i386.rpm 100% |=========================| 68 kB 00:00
---> Package httpd.i386 0:2.2.2-1.2 set to be updated
--> Running transaction check
Dependencies Resolved
アップデートとして判断された
=============================================================================
Package Arch Version Repository Size
=============================================================================
Updating:
httpd i386 2.2.2-1.2 updates 1.1 M
Transaction Summary
=============================================================================
Install 0 Package(s)
Update 1 Package(s)
Remove 0 Package(s)
Total download size: 1.1 M
Is this ok [y/N]:
=============================================================================
Install 0 Package(s)
Update 1 Package(s)
Remove 0 Package(s)
Total download size: 1.1 M
:
:
:
|
インストール後はデフォルトで「versionlock」は有効となっています。
当該プラグインをアンインストールする事なく、設定ファイルで無効にすることができます。
versionlock 設定ファイルの編集 # vi /etc/yum/pluginconf.d/versionlock.conf [main] enabled=0 enabled 属性の値の意味 0:無効 1:有効 |