管理人は国家試験勉強のため、4月より一年間このブログの更新頻度を月一回に落としています。
roadtoalinuxmintuser

theming

roundup
Linux Mint Tips : 古い Linux カーネルの削除の方法 04:16
名称未設s定

Linux カーネルをアップグレードしまくっていると、いつの間にか /boot が一杯一杯になってしまいます。そこで古い Linux カーネルの削除方法をシェアしたいと思います。おまけで新しい Linux カーネルの導入方法をカバーしました。

Linux カーネルの確認


Ctrl
+
Alt
+
T
を押して端末を起動します。
端末へコマンドをペーストするには
Ctrl
+
Shift
+
V
を押します。

まず、システムに存在する Linux カーネルと現在使用中の Linux カーネルのバージョンを確認します。システムに存在する Linux カーネルのバージョンを確認するには以下のコマンドを実行します:
dpkg -l|egrep 'linux-image|linux-headers'
出力例:
ii  linux-headers-4.11.0-14                       4.11.0-14.20~16.04.1                                      all          Header files related to Linux kernel version 4.11.0
ii linux-headers-4.11.0-14-generic 4.11.0-14.20~16.04.1 amd64 Linux kernel headers for version 4.11.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-21 4.4.0-21.37 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-21-generic 4.4.0-21.37 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.11.0-14-generic 4.11.0-14.20~16.04.1 amd64 Linux kernel image for version 4.11.0 on 64 bit x86 SMP
ii linux-image-4.4.0-21-generic 4.4.0-21.37 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.11.0-14-generic 4.11.0-14.20~16.04.1 amd64 Linux kernel extra modules for version 4.11.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-21-generic 4.4.0-21.37 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP

ここで表示されている
ii は「インストール済」
rc は「削除済でも設定は残ってる」
iu は「削除禁止」を表しています。 

現在使用中の Linux カーネルを確認するには以下のコマンドを実行します:
uname -r
出力例:
4.4.0-21-generic


以上からこのシステムには
・4.4.0-21(現在使用中)
・4.11.0-14(インストール済)
であることがわかりました。

古い Linux カーネルの削除


これには5つの方法が有ります。

一番簡単な方法


sudo apt autoremove --purgeこのコマンドによってシステムで使われていないパッケージとカーネルを削除します。

この方法の問題点は、自動でインストールされたか、アップデートマネージャーを使ってインストールされたカーネルしか削除されないことです。

sudo purge-old-kernels を使って


端末アプリ「byobu」を使う方法です。まずは byobu をインストールしてください:
sudo apt-get install byobu
以下のコマンドを実行すると古いカーネルが削除されます:
sudo purge-old-kernels
出力例:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
linux-headers-4.4.0-10-generic* linux-headers-4.4.0-12-generic* linux-headers-4.4.0-15-generic* linux-headers-4.4.0-16-generic*
linux-headers-4.4.0-17-generic* linux-headers-4.4.0-18-generic* linux-image-4.4.0-10-generic* linux-image-4.4.0-12-generic*
linux-image-4.4.0-15-generic* linux-image-4.4.0-16-generic* linux-image-4.4.0-17-generic* linux-image-4.4.0-18-generic*
linux-image-extra-4.4.0-17-generic* linux-image-extra-4.4.0-18-generic*
0 upgraded, 0 newly installed, 14 to remove and 196 not upgraded.
After this operation, 696 MB disk space will be freed.
Do you want to continue? [Y/n]


こちらは手動でインストールしたカーネルも対象です。

アップデートマネージャーから


もうひとつの方法はアップデートマネージャーから行う方法です。
ミントメニュー -> システム管理 -> アップデートマネージャ -> [ 表示 ] -> [ Linux カーネル ]:
範囲を選択_079

希望の Linux カーネルを選んで [ 削除 ] ボタンをクリックします:
範囲を選択_079

ひとつひとつコマンドで指定して


仮に、Linux カーネルの 4.4.0-53 を削除したい場合は apt-get purge を使って以下のように削除します。ステータスが ii で、現在使用していない Linux カーネルのバージョンを指定してあげます:
sudo apt-get purge linux-image-4.4.0-53-generic linux-headers-4.4.0-53 linux-headers-4.4.0-53-generic

自動削除指定


自動で古い Linux カーネルを削除するように設定する方法です。これは自動更新を有効にし、その際に使用されていない依存関係を自動削除する設定です。この時カーネルも削除されます:
sudo dpkg-reconfigure unattended-upgrades
gksu xed /etc/apt/apt.conf.d/50unattended-upgrades
この↓行を
//Unattended-Upgrade::Remove-Unused-Dependencies "false";

コメントアウトを取り除いて、値を「true」にします:
Unattended-Upgrade::Remove-Unused-Dependencies "true";

範囲を選択_080

上書き保存します。
警告新しい Linux カーネルで不具合が起きたとき、古いカーネルがあった方がいいので、この方法は推奨されません。

新しい Linux カーネルへアップグレード


ミントメニュー -> システム管理 -> アップデートマネージャ -> [ 表示 ] -> [ Linux カーネル ]:
範囲を選択_079

希望の Linux カーネルの [ インストール ] ボタンをクリックします:
範囲を選択_079

インストールが終わったら Grub をアップデートします:
sudo update-grub
パソコンを再起動すると新しい Linux カーネルに置き換わっているのが分かります:
uname -r
出力例:
4.11.0-14-generic


参考元1:Linux Mint Forums
参考元2:UbuntuHandbook
| Linux |
<< NEW | TOP | OLD>>
スポンサーサイト 04:16
| - |

Show some apps list:


miku

Follow on your feed reader:


About this blog:

Linux Mint-centric chronicle.
Since 2009.
Info 更新日は不定期です。

roadtoapython

roadtorubyist

git