タイトルが「Anacron job ‘cron.daily’ on server」のメールが届くようになりました。本文を読む限りではyumが正常に完了していないらしい。早速とりかかることにします。
届いたメールの詳細
毎朝4時頃に届くメールの内容は以下の通り。
Anacron job ‘cron.daily’ on server
/etc/cron.daily/0yum.cron: There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. Transaction couldn't start: installing package kernel-2.6.32-573.3.1.el6.i686 needs 542KB on the /boot filesystem Error: Could not run transaction.
トランザクションが残っていて終了していません。yum-complete-transactionで終了できるかもしれない。
トランザクションを開始できない理由は/bootの空き容量不足でkernelの更新ができないこと、らしい。
yum-complete-transactionを実行してみる
# yum-complete-transaction
読み込んだプラグイン:fastestmirror, priorities
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* extras: www.ftp.ne.jp
* rpmforge: ftp.kddilabs.jp
* updates: www.ftp.ne.jp
base | 3.7 kB 00:00
epel | 4.4 kB 00:00
extras | 3.4 kB 00:00
rpmforge | 1.9 kB 00:00
updates | 3.4 kB 00:00
126 packages excluded due to repository priority protections
There are 3 outstanding transactions to complete. Finishing the most recent one
The remaining transaction had 12 elements left to run
--> トランザクションの確認を実行しています。
---> Package kernel.i686 0:2.6.32-504.12.2.el6 will be 削除
---> Package kernel.i686 0:2.6.32-573.3.1.el6 will be インストール
---> Package kernel-firmware.noarch 0:2.6.32-573.1.1.el6 will be 更新
---> Package kernel-firmware.noarch 0:2.6.32-573.3.1.el6 will be an update
---> Package kernel-headers.i686 0:2.6.32-573.1.1.el6 will be 更新
---> Package kernel-headers.i686 0:2.6.32-573.3.1.el6 will be an update
---> Package perf.i686 0:2.6.32-573.1.1.el6 will be 更新
---> Package perf.i686 0:2.6.32-573.3.1.el6 will be an update
---> Package tzdata.noarch 0:2015e-1.el6 will be 更新
---> Package tzdata.noarch 0:2015f-1.el6 will be an update
---> Package tzdata-java.noarch 0:2015e-1.el6 will be 更新
---> Package tzdata-java.noarch 0:2015f-1.el6 will be an update
--> 依存性解決を終了しました。
依存性を解決しました
トランザクションの要約
================================================================================
インストール 1 パッケージ
アップグレード 5 パッケージ
削除 1 パッケージ
合計容量: 54 M
これでいいですか? [y/N]y
パッケージをダウンロードしています:
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
トランザクションを解しできません:
installing package kernel-2.6.32-573.3.1.el6.i686 needs 542KB on the /boot filesystem
[('installing package kernel-2.6.32-573.3.1.el6.i686 needs 542KB on the /boot filesystem', (9, '/boot', 555008L))]
Not removing old transaction files
やはり/bootの空き容量不足が原因でトランザクション開始(解し?)に失敗しているっぽいので次に進みます。
/bootの状態確認
まずはdfで/bootの全体把握。
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg_server-LogVol01
476128304 6029788 445905904 2% /
tmpfs 1419844 0 1419844 0% /dev/shm
/dev/md0 194177 156381 27560 86% /boot
約200MB確保していた/bootの空き容量が28MB程度。
# ls -alh /boot 合計 151M dr-xr-xr-x. 5 root root 4.0K 8月 10 21:19 2015 . dr-xr-xr-x. 26 root root 4.0K 8月 17 03:47 2015 .. -rw-r--r-- 1 root root 169 3月 12 04:32 2015 .vmlinuz-2.6.32-504.12.2.el6.i686.hmac -rw-r--r-- 1 root root 169 4月 22 13:30 2015 .vmlinuz-2.6.32-504.16.2.el6.i686.hmac -rw-r--r-- 1 root root 169 6月 10 03:36 2015 .vmlinuz-2.6.32-504.23.4.el6.i686.hmac -rw-r--r-- 1 root root 169 7月 15 20:23 2015 .vmlinuz-2.6.32-504.30.3.el6.i686.hmac -rw-r--r-- 1 root root 168 7月 25 23:29 2015 .vmlinuz-2.6.32-573.1.1.el6.i686.hmac -rw-r--r-- 1 root root 2.0M 3月 12 04:32 2015 System.map-2.6.32-504.12.2.el6.i686 -rw-r--r-- 1 root root 2.0M 4月 22 13:30 2015 System.map-2.6.32-504.16.2.el6.i686 -rw-r--r-- 1 root root 2.0M 6月 10 03:36 2015 System.map-2.6.32-504.23.4.el6.i686 -rw-r--r-- 1 root root 2.0M 7月 15 20:23 2015 System.map-2.6.32-504.30.3.el6.i686 -rw-r--r-- 1 root root 2.0M 7月 25 23:29 2015 System.map-2.6.32-573.1.1.el6.i686 -rw-r--r-- 1 root root 109K 3月 12 04:32 2015 config-2.6.32-504.12.2.el6.i686 -rw-r--r-- 1 root root 109K 4月 22 13:30 2015 config-2.6.32-504.16.2.el6.i686 -rw-r--r-- 1 root root 109K 6月 10 03:36 2015 config-2.6.32-504.23.4.el6.i686 -rw-r--r-- 1 root root 109K 7月 15 20:23 2015 config-2.6.32-504.30.3.el6.i686 -rw-r--r-- 1 root root 110K 7月 25 23:29 2015 config-2.6.32-573.1.1.el6.i686 drwxr-xr-x. 3 root root 1.0K 7月 16 12:09 2013 efi drwxr-xr-x. 2 root root 1.0K 8月 9 04:47 2015 grub -rw------- 1 root root 18M 3月 13 04:29 2015 initramfs-2.6.32-504.12.2.el6.i686.img -rw------- 1 root root 18M 4月 23 03:52 2015 initramfs-2.6.32-504.16.2.el6.i686.img -rw------- 1 root root 18M 6月 11 03:58 2015 initramfs-2.6.32-504.23.4.el6.i686.img -rw------- 1 root root 18M 7月 17 03:32 2015 initramfs-2.6.32-504.30.3.el6.i686.img -rw------- 1 root root 23M 8月 9 04:47 2015 initramfs-2.6.32-573.1.1.el6.i686.img -rw------- 1 root root 5.9M 4月 17 04:25 2015 initrd-2.6.32-504.12.2.el6.i686kdump.img -rw------- 1 root root 5.7M 5月 13 22:11 2015 initrd-2.6.32-504.16.2.el6.i686kdump.img -rw------- 1 root root 5.7M 7月 6 01:11 2015 initrd-2.6.32-504.23.4.el6.i686kdump.img -rw------- 1 root root 6.0M 8月 9 04:33 2015 initrd-2.6.32-504.30.3.el6.i686kdump.img -rw------- 1 root root 5.8M 8月 10 21:19 2015 initrd-2.6.32-573.1.1.el6.i686kdump.img drwx------. 2 root root 12K 7月 16 11:46 2013 lost+found -rw-r--r-- 1 root root 192K 3月 12 04:33 2015 symvers-2.6.32-504.12.2.el6.i686.gz -rw-r--r-- 1 root root 192K 4月 22 13:31 2015 symvers-2.6.32-504.16.2.el6.i686.gz -rw-r--r-- 1 root root 192K 6月 10 03:36 2015 symvers-2.6.32-504.23.4.el6.i686.gz -rw-r--r-- 1 root root 192K 7月 15 20:23 2015 symvers-2.6.32-504.30.3.el6.i686.gz -rw-r--r-- 1 root root 198K 7月 25 23:29 2015 symvers-2.6.32-573.1.1.el6.i686.gz -rwxr-xr-x 1 root root 3.9M 3月 12 04:32 2015 vmlinuz-2.6.32-504.12.2.el6.i686 -rwxr-xr-x 1 root root 3.9M 4月 22 13:30 2015 vmlinuz-2.6.32-504.16.2.el6.i686 -rwxr-xr-x 1 root root 3.9M 6月 10 03:36 2015 vmlinuz-2.6.32-504.23.4.el6.i686 -rwxr-xr-x 1 root root 3.9M 7月 15 20:23 2015 vmlinuz-2.6.32-504.30.3.el6.i686 -rwxr-xr-x 1 root root 3.9M 7月 25 23:29 2015 vmlinuz-2.6.32-573.1.1.el6.i686
5世代分のkernelイメージが格納されているのが原因。でもこんなに古いバージョンを保存する必要あるのかな?
package-cleanupで安全に古いカーネルを削除する
package-cleanupコマンドを利用して、指定した世代分のカーネルを残し古いカーネルを削除します。今回は/bootの容量確保が目的なので、ひとまず3世代分を残して削除します。
# package-cleanup --oldkernels --count=3
読み込んだプラグイン:fastestmirror, priorities
終了していない残作業があります。それらを終了するために、まず yum-complete-transaction の実行を検討すべきかもしれません。
--> トランザクションの確認を実行しています。
---> Package kernel.i686 0:2.6.32-504.12.2.el6 will be 削除
---> Package kernel.i686 0:2.6.32-504.16.2.el6 will be 削除
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================
パッケージ アーキテクチャ
バージョン リポジトリー 容量
================================================================================
削除:
kernel i686 2.6.32-504.12.2.el6 @updates 91 M
kernel i686 2.6.32-504.16.2.el6 @updates 91 M
トランザクションの要約
================================================================================
削除 2 パッケージ
インストール済み容量: 182 M
これでいいですか? [y/N]y
パッケージをダウンロードしています:
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
削除中 : kernel.i686 1/2
削除中 : kernel.i686 2/2
Verifying : kernel-2.6.32-504.16.2.el6.i686 1/2
Verifying : kernel-2.6.32-504.12.2.el6.i686 2/2
削除しました:
kernel.i686 0:2.6.32-504.12.2.el6 kernel.i686 0:2.6.32-504.16.2.el6
完了しました!
再度yum-complete-transactionを実行する
# yum-complete-transaction
読み込んだプラグイン:fastestmirror, priorities
Loading mirror speeds from cached hostfile
* base: ftp.tsukuba.wide.ad.jp
* extras: ftp.tsukuba.wide.ad.jp
* rpmforge: ftp.kddilabs.jp
* updates: ftp.tsukuba.wide.ad.jp
126 packages excluded due to repository priority protections
There are 7 outstanding transactions to complete. Finishing the most recent one
The remaining transaction had 12 elements left to run
--> トランザクションの確認を実行しています。
---> Package kernel.i686 0:2.6.32-573.3.1.el6 will be インストール
---> Package kernel-firmware.noarch 0:2.6.32-573.1.1.el6 will be 更新
---> Package kernel-firmware.noarch 0:2.6.32-573.3.1.el6 will be an update
---> Package kernel-headers.i686 0:2.6.32-573.1.1.el6 will be 更新
---> Package kernel-headers.i686 0:2.6.32-573.3.1.el6 will be an update
---> Package perf.i686 0:2.6.32-573.1.1.el6 will be 更新
---> Package perf.i686 0:2.6.32-573.3.1.el6 will be an update
---> Package tzdata.noarch 0:2015e-1.el6 will be 更新
---> Package tzdata.noarch 0:2015f-1.el6 will be an update
---> Package tzdata-java.noarch 0:2015e-1.el6 will be 更新
---> Package tzdata-java.noarch 0:2015f-1.el6 will be an update
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================
パッケージ アーキテクチャ
バージョン リポジトリー 容量
================================================================================
インストールしています:
kernel i686 2.6.32-573.3.1.el6 updates 28 M
更新:
kernel-firmware noarch 2.6.32-573.3.1.el6 updates 18 M
kernel-headers i686 2.6.32-573.3.1.el6 updates 3.9 M
perf i686 2.6.32-573.3.1.el6 updates 4.1 M
tzdata noarch 2015f-1.el6 updates 442 k
tzdata-java noarch 2015f-1.el6 updates 176 k
トランザクションの要約
================================================================================
インストール 1 パッケージ
アップグレード 5 パッケージ
合計容量: 54 M
これでいいですか? [y/N]y
パッケージをダウンロードしています:
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
更新 : kernel-firmware-2.6.32-573.3.1.el6.noarch 1/11
インストールしています : kernel-2.6.32-573.3.1.el6.i686 2/11
更新 : kernel-headers-2.6.32-573.3.1.el6.i686 3/11
更新 : perf-2.6.32-573.3.1.el6.i686 4/11
更新 : tzdata-java-2015f-1.el6.noarch 5/11
更新 : tzdata-2015f-1.el6.noarch 6/11
整理中 : kernel-headers-2.6.32-573.1.1.el6.i686 7/11
整理中 : kernel-firmware-2.6.32-573.1.1.el6.noarch 8/11
整理中 : perf-2.6.32-573.1.1.el6.i686 9/11
整理中 : tzdata-java-2015e-1.el6.noarch 10/11
整理中 : tzdata-2015e-1.el6.noarch 11/11
Verifying : tzdata-2015f-1.el6.noarch 1/11
Verifying : tzdata-java-2015f-1.el6.noarch 2/11
Verifying : perf-2.6.32-573.3.1.el6.i686 3/11
Verifying : kernel-firmware-2.6.32-573.3.1.el6.noarch 4/11
Verifying : kernel-headers-2.6.32-573.3.1.el6.i686 5/11
Verifying : kernel-2.6.32-573.3.1.el6.i686 6/11
Verifying : tzdata-java-2015e-1.el6.noarch 7/11
Verifying : kernel-firmware-2.6.32-573.1.1.el6.noarch 8/11
Verifying : tzdata-2015e-1.el6.noarch 9/11
Verifying : perf-2.6.32-573.1.1.el6.i686 10/11
Verifying : kernel-headers-2.6.32-573.1.1.el6.i686 11/11
インストール:
kernel.i686 0:2.6.32-573.3.1.el6
更新:
kernel-firmware.noarch 0:2.6.32-573.3.1.el6
kernel-headers.i686 0:2.6.32-573.3.1.el6
perf.i686 0:2.6.32-573.3.1.el6
tzdata.noarch 0:2015f-1.el6
tzdata-java.noarch 0:2015f-1.el6
完了しました!
Cleaning up completed transaction file
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_server-LogVol01
455G 5.7G 426G 2% /
tmpfs 1.4G 0 1.4G 0% /dev/shm
/dev/md0 190M 124M 57M 69% /boot
これでようやく処理が終了。/bootの容量も確保したのでしばらく問題なし!
と思ったらメールが止まらない?
安心していたら翌日も「Anacron job ‘cron.daily’ on server」メールが届きました。
/etc/cron.daily/0yum.cron: There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
もう一回yum-complete-transactionを試します。
# yum-complete-transaction 読み込んだプラグイン:fastestmirror, priorities Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * extras: ftp.tsukuba.wide.ad.jp * rpmforge: ftp.kddilabs.jp * updates: ftp.tsukuba.wide.ad.jp base | 3.7 kB 00:00 epel | 4.4 kB 00:00 extras | 3.4 kB 00:00 extras/primary_db | 26 kB 00:00 rpmforge | 1.9 kB 00:00 updates | 3.4 kB 00:00 126 packages excluded due to repository priority protections There are 6 outstanding transactions to complete. Finishing the most recent one The remaining transaction had 12 elements left to run パッケージ kernel-firmware-2.6.32-573.3.1.el6.noarch はインストール済みか最新バ ージョンです パッケージ kernel-2.6.32-573.3.1.el6.i686 はインストール済みか最新バージョンです パッケージ kernel-headers-2.6.32-573.3.1.el6.i686 はインストール済みか最新バージョンです パッケージ perf-2.6.32-573.3.1.el6.i686 はインストール済みか最新バージョンです パッケージ tzdata-java-2015f-1.el6.noarch はインストール済みか最新バージョンです パッケージ tzdata-2015f-1.el6.noarch はインストール済みか最新バージョンです Nothing in the unfinished transaction to cleanup. Cleaning up completed transaction file
まだメールが届くぞ?
次の朝もまたメールが届きました。一体どうなってるんだ?とyum-complete-transactionの結果を見比べてみるとThere are 5 outstanding transactions to complete. と数字が減っていることにきづきました。ならば0になるまで繰り返せば今度こそ終わるはず。
# yum-complete-transaction 読み込んだプラグイン:fastestmirror, priorities Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * extras: ftp.tsukuba.wide.ad.jp * rpmforge: ftp.kddilabs.jp * updates: ftp.tsukuba.wide.ad.jp 126 packages excluded due to repository priority protections No unfinished transactions left.
No unfinished transactions left.と出たので今度こそ片付きました。