CentOS7 のカーネルは定期的にアップデートされるけど、何もしないとアップデート後も古いカーネルはそのままディスク上に残っている。 古いカーネルが残ること自体は、新しいカーネルで何か問題があったときに古いバージョンに戻すことができるのでむしろ良い面もある。 ただ、長い間放置しているとディスクのスペース的にたまに問題が起こる。
カーネルをアップデートする際、パーティションのサイズに余裕がないと以下のようにエラーになってしまう。
$ sudo yum -y update ...(省略)... Transaction check error: installing package kernel-3.10.0-229.14.1.el7.x86_64 needs 30MB on the /boot filesystem エラーの要約 ------------- ディスク要求: 少なくとも 30MB の空き容量がファイルシステム /boot で必要です。
その場合には、yum-utils をインストールした上で package-cleanup コマンドを使って古いカーネルを削除する必要がある。
$ sudo yum -y install yum-utils
$ sudo package-cleanup --oldkernels --count=1 -y
上記の操作でパーティションに空きができたら、改めてアップデートをかける。
$ sudo yum -y update ...(省略)... 完了しました!
めでたしめでたし。