それで...

それで...

/bootパーティションのスペースを解放するためにどのカーネルを削除するかをどのように決定しますか。

ここにシナリオがあります(背景情報)。

1. パリティトン情報(役に立つ場合)

# df -h
Filesystem      Size  Used Avail Use% Mounted on
...
/dev/sda1        99M   81M   14M  86% /boot
...

2. 現在のカーネルバージョン

# uname -a
Linux serv.example.com 2.6.32-358.23.2.el6.x86_64 #1 SMP Wed Oct 16 18:37:12 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

3. すべてのカーネルバージョンがインストールされている

# rpm -qa | grep kernel
abrt-addon-kerneloops-2.0.8-21.el6.centos.x86_64
kernel-firmware-2.6.32-431.1.2.0.1.el6.noarch
libreport-plugin-kerneloops-2.0.9-19.el6.centos.x86_64
kernel-headers-2.6.32-431.1.2.0.1.el6.x86_64
kernel-2.6.32-358.11.1.el6.x86_64
kernel-2.6.32-358.el6.x86_64
kernel-2.6.32-358.23.2.el6.x86_64
dracut-kernel-004-336.el6_5.2.noarch

それで...

  1. 上記のリストから削除するカーネル バージョンはどれですか?
  2. どうやって?
  3. 決定についての簡単な説明(なぜ?)があると助かります。

答え1

以下より抜粋Webサイト

## Install yum utils ##
yum install yum-utils

## Package-cleanup set count as how many old kernels you want left ##
package-cleanup --oldkernels --count=2

これにより、古いカーネルがすべて削除され、CentOS 6.4 上の最新のカーネル 2 つだけが保持されます。これは、最近のカーネルにはバグ修正が含まれており、新しいカーネルが起動に失敗した場合にいつでも古いカーネルにフェイルオーバーできるため、おそらく必要な動作です。上記のコマンドは、最新のカーネルが自動的に保持されるため、rpm -e xyz (xyz は特定のカーネル) を実行する必要がないことを意味します。

実行したコマンド

rpm -qa | grep kernel

実際には、どのカーネルがブート パーティションの領域を使用しているかはわかりません。dracut-kernel は実際にはシステムにカーネルをインストールしません。それを確認するには、rpm を照会できます。

[root@localhost]: rpm -ql dracut-kernel
/usr/share/doc/dracut-kernel-004
/usr/share/doc/dracut-kernel-004/README.kernel

答え2

最新の 2 つを除いてすべて削除します。現在実行しているものももちろん必要ですが、現在のものに安定性の問題がある場合に備えて、以前のものを 1 つ残しておく価値があると思います。その場合、急いで元に戻すためのものを用意しておく必要があります。

rpm -ev kernel-2.6.32-358

現在の安定性に自信があり、本当にそのスペースを取り戻したい場合は、2番目に新しいものを削除してください

rpm -ev kernel-2.6.32-358.11.1

関連情報