Help us understand the problem. What is going on with this article?

Ubuntu で不要なパッケージを削除する(設定ファイルだけのこっているもの、古いカーネルなど)

More than 3 years have passed since last update.

背景

Ubuntu で定期的に aptitude safe-upgrade を実行してパッケージ更新していると、カーネルの更新で /boot パーティションの空き領域が少なくなります。

apt-get autoremove を実行すると、古いカーネルパッケージが削除されて /boot パーティションの空き領域を回復することができますが、削除されていないものが残っていたので、手動で削除しました。

参考

環境

$ lsb_release  -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:        14.04
Codename:       trusty

$ uname -a
Linux brix 3.19.0-42-generic #48~14.04.1-Ubuntu SMP Fri Dec 18 10:24:49 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

手順

古いカーネルを削除する

インストール済みのカーネルパッケージを確認する。

# パッケージ名に 3.13.0, 3.16.0, 3.19.0, 4.2.0 を含むものを検索
$ aptitude search ~i\(3\.1[369]\.0\|4\.2\.0\)
i   linux-headers-3.13.0-70                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-70-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i   linux-headers-3.13.0-71                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-71-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i   linux-headers-3.13.0-73                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-73-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i A linux-headers-3.13.0-74                             - Header files related to Linux kernel version 3.13.0
i A linux-headers-3.13.0-74-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i A linux-headers-3.19.0-42                             - Header files related to Linux kernel version 3.19.0
i   linux-headers-3.19.0-42-generic                     - Linux kernel headers for version 3.19.0 on 64 bit x86 SMP
i A linux-image-3.13.0-74-generic                       - Linux kernel image for version 3.13.0 on 64 bit x86 SMP
i A linux-image-3.19.0-42-generic                       - Linux kernel image for version 3.19.0 on 64 bit x86 SMP
i A linux-image-extra-3.13.0-74-generic                 - Linux kernel extra modules for version 3.13.0 on 64 bit x86 SM
i A linux-image-extra-3.19.0-42-generic                 - Linux kernel extra modules for version 3.19.0 on 64 bit x86 SM
i A linux-signed-image-3.13.0-74-generic                - Signed kernel image generic
i   linux-signed-image-3.19.0-42-generic                - Signed kernel image generic

3.13.0-70, 3.13.0-71, 3.13.0-73 が不要なので削除する。削除対象パッケージのみを検出する条件を確認する。

# パッケージ名に 3.13.0-70, 3.13.0-71, 3.13.0-73 を含むものを検索
$ aptitude search ~i\(3\.13\.0-7[013]\)
i   linux-headers-3.13.0-70                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-70-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i   linux-headers-3.13.0-71                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-71-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
i   linux-headers-3.13.0-73                             - Header files related to Linux kernel version 3.13.0
i   linux-headers-3.13.0-73-generic                     - Linux kernel headers for version 3.13.0 on 64 bit x86 SMP

不要なカーネルパッケージを削除する。

# 「-F %p」はパッケージ名のみ表示するフォーマット指定
$ sudo aptitude purge $(aptitude search ~i\(3\.13\.0-7[013]\) -F %p)

削除したパッケージで設定ファイルが残っているものを削除する

# パッケージを確認する
$ aptitude search ~c

# パッケージを削除する
$ sudo aptitude purge $(aptitude search ~c -F %p)
tkmtmkt
初めてのプログラミング経験は、ベーマガ1986年4月号に掲載されていた「ハンバーグを焼こう」をMSXに入力してデバッグしたこと。
https://github.com/tkmtmkt
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away