Ubuntu のアップデートを繰り返すと、GRUB メニューに以前の Linux カーネルが多数リストされ、ハードディスクの容量を大量に消費します。使用されていないカーネルを簡単に削除するにはどうすればよいでしょうか。
答え1
以下の解決策は Ubuntu に固有のものです。
現在使用中のカーネルを確認します。
uname -r
インストールされているすべてのカーネル イメージとヘッダーを一覧表示します。
dpkg --list | grep linux-image dpkg --list | grep linux-headers
削除したいカーネルのイメージとヘッダーを削除します。
sudo apt-get purge linux-image-3.19.0-15 sudo apt-get purge linux-headers-3.19.0-15
上記のコマンドは、カーネル イメージとそれに関連するカーネル モジュールおよびヘッダー ファイルを削除します。
未使用のカーネルを削除した後、GRUB 構成を更新します。
sudo update-grub2
次に、再起動して、GRUB メニューが適切にクリーンアップされたかどうかを確認します。
答え2
システム > 管理メニューから Synaptic パッケージ マネージャーを開きます。
ツールバーの「検索」ボタンをクリックして、を検索しますlinux-image-2
。
結果には、利用可能なインストール済みのカーネルがすべて表示されます。左側の緑色のボックスは、パッケージがインストールされていることを示します。インストールする Linux イメージは最新のものだけです。現在実行中のカーネルに対応するパッケージを見つけます (これは、ターミナル ウィンドウで見つかったカーネルです)。そのパッケージを必ず保持してください。ボックスをクリックして [削除対象としてマーク] を選択すると、リストから古いカーネルをアンインストールできます。
これを入手したのはここ
答え3
ターミナルを開き、以下のコマンドを実行します。再起動すると、最新のカーネルのみが GRUB メニューに表示されます。
dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge
上記のコマンドを実行するには、ルート パスワードが必要です。
感謝ウブントゥゲニウス。
答え4
byobu パッケージには 'purge-old-kernels' というスクリプトがあります:
apt-get install byobu
purge-old-kernels
現在使用中のカーネルを除いて保持するカーネルの数を指定できます。
purge-old-kernels --keep 2
必要であればこれを cron に入れてください。
見る:https://raw.githubusercontent.com/dustinkirkland/byobu/master/usr/bin/purge-old-kernels