Yumのアップデートがうまくいかない場合にキャッシュをクリア

提供:あわ自由帳

途中でyumのアップデートが途中で中断してしまったなどで、リポジトリがおかしくなり再度アップデートしようとしてもうまくいかないときはyumが保存しているキャッシュをyum clean allで削除するとよい

キャッシュ用ファイル容量確認

yum によるインストールやアップデートで利用した rpm パッケージやデータのキャッシュ用ファイルは /var/cache/yum に保存されます。du コマンドで確認できます。

[root@host3 ~]# du -sh /var/cache/yum                                                                                           
82M     /var/cache/yum

yum のキャッシュを削除

以下コマンドですべてのキャッシュを削除できます。

[root@host3 ~]# yum clean all

/var/tmpディレクトリにyumのキャッシュ

yumのキャッシュディレクトリは”/var/cache/yum”ディレクトリのはずなのですが、非ルートユーザーで実行すると”/var/cache/yum”ディレクトリに対して書込み権限がないせいか、/var/tmpディレクトリに作成するようです。

[root@host3 ~]# du --max-depth=1 -h -x /var/tmp
50M     /var/tmp/yum-sysop-W4uPVf
0       /var/tmp/systemd-private-78dBWx
0       /var/tmp/systemd-private-AHmScS
0       /var/tmp/systemd-private-uVqxCm
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-dovecot.service-h2Ai5p
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-mariadb.service-hks882
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-httpd.service-3etZ8N
50M     /var/tmp
キャッシュの削除
そのキャッシュを生成したユーザーアカウントで”yum clean all”コマンドを実行します。
[sysop@host3 ~]$ yum clean all
キャッシュ容量確認
[root@host3 ~]# du --max-depth=1 -h -x /var/tmp
0       /var/tmp/yum-sysop-W4uPVf
0       /var/tmp/systemd-private-78dBWx
0       /var/tmp/systemd-private-AHmScS
0       /var/tmp/systemd-private-uVqxCm
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-dovecot.service-h2Ai5p
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-mariadb.service-hks882
0       /var/tmp/systemd-private-67625ad64c97444f86b50b18ee163de1-httpd.service-3etZ8N
4.0K    /var/tmp

アップデートのチェックと実行

yum によるアップデートのチェックとアップデートの実行は以下コマンドで行います。

[root@host3 ~]# yum check-update
[root@host3 ~]# yum -y update