1

I set up unattended-upgrades on an Ubuntu 16.04 server I have. I checked it today, and /boot is out of space. apt-get and other answers suggest running apt-get purge <old-kernels>, but that command also fails for me. I am assuming it is due to partially configured packages?

How can I force apt-get to remove old packages on /boot? Also, is there a way to configure unattended-upgrades to periodically remove old, unused kernel packages?

Here is my console output when I try to upgrade and purge packages

user@host:~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 linux-image-extra-4.4.0-116-generic : Depends: linux-image-4.4.0-116-generic but it is not installed
 linux-image-extra-4.4.0-130-generic : Depends: linux-image-4.4.0-130-generic but it is not installed
 linux-image-generic : Depends: linux-image-4.4.0-130-generic but it is not installed
                       Recommends: thermald but it is not installed
E: Unmet dependencies. Try using -f.

user@host:~$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  linux-headers-4.4.0-101 linux-headers-4.4.0-101-generic linux-headers-4.4.0-103 linux-headers-4.4.0-103-generic linux-headers-4.4.0-116 linux-headers-4.4.0-116-generic linux-headers-4.4.0-89 linux-headers-4.4.0-89-generic linux-headers-4.4.0-92
  linux-headers-4.4.0-92-generic linux-headers-4.4.0-93 linux-headers-4.4.0-93-generic linux-headers-4.4.0-96 linux-headers-4.4.0-96-generic linux-headers-4.4.0-97 linux-headers-4.4.0-97-generic linux-headers-4.4.0-98 linux-headers-4.4.0-98-generic
  linux-image-4.4.0-101-generic linux-image-4.4.0-103-generic linux-image-4.4.0-116-generic linux-image-4.4.0-89-generic linux-image-4.4.0-92-generic linux-image-4.4.0-93-generic linux-image-4.4.0-96-generic linux-image-4.4.0-97-generic linux-image-4.4.0-98-generic
  linux-image-extra-4.4.0-101-generic linux-image-extra-4.4.0-103-generic linux-image-extra-4.4.0-116-generic linux-image-extra-4.4.0-89-generic linux-image-extra-4.4.0-92-generic linux-image-extra-4.4.0-93-generic linux-image-extra-4.4.0-96-generic
  linux-image-extra-4.4.0-97-generic linux-image-extra-4.4.0-98-generic
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  amd64-microcode intel-microcode iucode-tool linux-generic linux-headers-4.4.0-130 linux-headers-4.4.0-130-generic linux-headers-generic linux-image-4.4.0-116-generic linux-image-4.4.0-130-generic linux-image-extra-4.4.0-130-generic linux-image-generic
Suggested packages:
  fdutils linux-doc-4.4.0 | linux-source-4.4.0 linux-tools
Recommended packages:
  thermald
The following NEW packages will be installed:
  amd64-microcode intel-microcode iucode-tool linux-headers-4.4.0-130 linux-headers-4.4.0-130-generic linux-image-4.4.0-116-generic linux-image-4.4.0-130-generic linux-image-extra-4.4.0-130-generic
The following packages will be upgraded:
  linux-generic linux-headers-generic linux-image-generic
3 upgraded, 8 newly installed, 0 to remove and 130 not upgraded.
13 not fully installed or removed.
Need to get 70.7 MB/92.7 MB of archives.
After this operation, 372 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-image-4.4.0-130-generic amd64 4.4.0-130.156 [22.1 MB]
Get:2 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-image-extra-4.4.0-130-generic amd64 4.4.0-130.156 [36.5 MB]
Get:3 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 iucode-tool amd64 1.5.1-1ubuntu0.1 [33.8 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 intel-microcode amd64 3.20180425.1~ubuntu0.16.04.1 [1,145 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 amd64-microcode amd64 3.20180524.1~ubuntu0.16.04.1 [32.9 kB]
Get:6 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-generic amd64 4.4.0.130.136 [1,792 B]
Get:7 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-image-generic amd64 4.4.0.130.136 [2,532 B]
Get:8 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-headers-4.4.0-130 all 4.4.0-130.156 [10.0 MB]
Get:9 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-headers-4.4.0-130-generic amd64 4.4.0-130.156 [815 kB]
Get:10 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-headers-generic amd64 4.4.0.130.136 [2,498 B]
Fetched 70.7 MB in 47s (1,475 kB/s)
Selecting previously unselected package linux-image-4.4.0-130-generic.
(Reading database ... 491770 files and directories currently installed.)
Preparing to unpack .../linux-image-4.4.0-130-generic_4.4.0-130.156_amd64.deb ...
Done.
Unpacking linux-image-4.4.0-130-generic (4.4.0-130.156) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-4.4.0-130-generic_4.4.0-130.156_amd64.deb (--unpack):
 cannot copy extracted data for './boot/vmlinuz-4.4.0-130-generic' to '/boot/vmlinuz-4.4.0-130-generic.dpkg-new': failed to write (No space left on device)
No apport report written because the error message indicates a disk full error
                                                                              dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-130-generic /boot/vmlinuz-4.4.0-130-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-130-generic /boot/vmlinuz-4.4.0-130-generic
Selecting previously unselected package linux-image-extra-4.4.0-130-generic.
Preparing to unpack .../linux-image-extra-4.4.0-130-generic_4.4.0-130.156_amd64.deb ...
Unpacking linux-image-extra-4.4.0-130-generic (4.4.0-130.156) ...
Selecting previously unselected package iucode-tool.
Preparing to unpack .../iucode-tool_1.5.1-1ubuntu0.1_amd64.deb ...
Unpacking iucode-tool (1.5.1-1ubuntu0.1) ...
Selecting previously unselected package intel-microcode.
Preparing to unpack .../intel-microcode_3.20180425.1~ubuntu0.16.04.1_amd64.deb ...
Unpacking intel-microcode (3.20180425.1~ubuntu0.16.04.1) ...
Selecting previously unselected package amd64-microcode.
Preparing to unpack .../amd64-microcode_3.20180524.1~ubuntu0.16.04.1_amd64.deb ...
Unpacking amd64-microcode (3.20180524.1~ubuntu0.16.04.1) ...
Preparing to unpack .../linux-generic_4.4.0.130.136_amd64.deb ...
Unpacking linux-generic (4.4.0.130.136) over (4.4.0.116.122) ...
Preparing to unpack .../linux-image-generic_4.4.0.130.136_amd64.deb ...
Unpacking linux-image-generic (4.4.0.130.136) over (4.4.0.116.122) ...
Selecting previously unselected package linux-headers-4.4.0-130.
Preparing to unpack .../linux-headers-4.4.0-130_4.4.0-130.156_all.deb ...
Unpacking linux-headers-4.4.0-130 (4.4.0-130.156) ...
Selecting previously unselected package linux-headers-4.4.0-130-generic.
Preparing to unpack .../linux-headers-4.4.0-130-generic_4.4.0-130.156_amd64.deb ...
Unpacking linux-headers-4.4.0-130-generic (4.4.0-130.156) ...
Preparing to unpack .../linux-headers-generic_4.4.0.130.136_amd64.deb ...
Unpacking linux-headers-generic (4.4.0.130.136) over (4.4.0.116.122) ...
Preparing to unpack .../linux-image-4.4.0-116-generic_4.4.0-116.140_amd64.deb ...
Examining /etc/kernel/preinst.d/
Done.
Unpacking linux-image-4.4.0-116-generic (4.4.0-116.140) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-4.4.0-116-generic_4.4.0-116.140_amd64.deb (--unpack):
 cannot copy extracted data for './boot/vmlinuz-4.4.0-116-generic' to '/boot/vmlinuz-4.4.0-116-generic.dpkg-new': failed to write (No space left on device)
No apport report written because the error message indicates a disk full error
                                                                              dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-116-generic /boot/vmlinuz-4.4.0-116-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-116-generic /boot/vmlinuz-4.4.0-116-generic
Processing triggers for man-db (2.7.5-1) ...
Errors were encountered while processing:
 /var/cache/apt/archives/linux-image-4.4.0-130-generic_4.4.0-130.156_amd64.deb
 /var/cache/apt/archives/linux-image-4.4.0-116-generic_4.4.0-116.140_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

When I try to purge a package, I get the following:

user@host:~$ sudo apt-get purge linux-image-4.4.0-89-generic
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 linux-image-extra-4.4.0-116-generic : Depends: linux-image-4.4.0-116-generic but it is not going to be installed
 linux-image-extra-4.4.0-130-generic : Depends: linux-image-4.4.0-130-generic but it is not going to be installed
 linux-image-extra-4.4.0-89-generic : Depends: linux-image-4.4.0-89-generic but it is not going to be installed
 linux-image-generic : Depends: linux-image-4.4.0-130-generic but it is not going to be installed
                       Recommends: thermald but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Here are all the packages that are installed or partially installed/configured:

user@host:~$ dpkg -l | grep linux-.* | grep '^.[iFH]'
ii  linux-base                          4.0ubuntu1                                 all          Linux image base package
iF  linux-firmware                      1.157.16                                   all          Firmware for Linux kernel drivers
ii  linux-headers-4.4.0-101             4.4.0-101.124                              all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-101-generic     4.4.0-101.124                              amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-103             4.4.0-103.126                              all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-103-generic     4.4.0-103.126                              amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-104             4.4.0-104.127                              all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-104-generic     4.4.0-104.127                              amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-109             4.4.0-109.132                              all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-109-generic     4.4.0-109.132                              amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-112             4.4.0-112.135                              all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-112-generic     4.4.0-112.135                              amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-89              4.4.0-89.112                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-89-generic      4.4.0-89.112                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-92              4.4.0-92.115                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-92-generic      4.4.0-92.115                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-93              4.4.0-93.116                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-93-generic      4.4.0-93.116                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-96              4.4.0-96.119                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-96-generic      4.4.0-96.119                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-97              4.4.0-97.120                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-97-generic      4.4.0-97.120                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-headers-4.4.0-98              4.4.0-98.121                               all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-98-generic      4.4.0-98.121                               amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-101-generic       4.4.0-101.124                              amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-103-generic       4.4.0-103.126                              amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-104-generic       4.4.0-104.127                              amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF  linux-image-4.4.0-109-generic       4.4.0-109.132                              amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF  linux-image-4.4.0-112-generic       4.4.0-112.135                              amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-89-generic        4.4.0-89.112                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-92-generic        4.4.0-92.115                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-93-generic        4.4.0-93.116                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-96-generic        4.4.0-96.119                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-97-generic        4.4.0-97.120                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-98-generic        4.4.0-98.121                               amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-101-generic 4.4.0-101.124                              amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-103-generic 4.4.0-103.126                              amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
iF  linux-image-extra-4.4.0-104-generic 4.4.0-104.127                              amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-89-generic  4.4.0-89.112                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-92-generic  4.4.0-92.115                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-93-generic  4.4.0-93.116                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-96-generic  4.4.0-96.119                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-97-generic  4.4.0-97.120                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-98-generic  4.4.0-98.121                               amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP

System & kernel info:

user@host:~$ uname -a
Linux host 4.4.0-104-generic #127-Ubuntu SMP Mon Dec 11 12:16:42 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

Disk usage:

user@host:~$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
udev                        1.9G     0  1.9G   0% /dev
tmpfs                       376M   11M  366M   3% /run
/dev/mapper/host--vg-root  225G   17G  197G   8% /
tmpfs                       1.9G  4.0K  1.9G   1% /dev/shm
tmpfs                       5.0M     0  5.0M   0% /run/lock
tmpfs                       1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                   472M  467M     0 100% /boot
tmpfs                       376M     0  376M   0% /run/user/1000

Update 1

I tried a dpkg --purge as suggested in the comments and got the following

user@host:~$ sudo dpkg --purge linux-image-extra-4.4.0-89-generic linux-image-4.4.0-89-generic
(Reading database ... 523323 files and directories currently installed.)
Removing linux-image-extra-4.4.0-89-generic (4.4.0-89.112) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-89-generic
W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-4.4.0-89-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-extra-4.4.0-89-generic (--purge):
 subprocess installed post-removal script returned error exit status 1
Removing linux-image-4.4.0-89-generic (4.4.0-89.112) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
update-initramfs: Deleting /boot/initrd.img-4.4.0-89-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.4.0-112-generic
Found linux image: /boot/vmlinuz-4.4.0-109-generic
Found linux image: /boot/vmlinuz-4.4.0-104-generic
Found initrd image: /boot/initrd.img-4.4.0-104-generic
Found linux image: /boot/vmlinuz-4.4.0-103-generic
Found initrd image: /boot/initrd.img-4.4.0-103-generic
Found linux image: /boot/vmlinuz-4.4.0-101-generic
Found initrd image: /boot/initrd.img-4.4.0-101-generic
Found linux image: /boot/vmlinuz-4.4.0-98-generic
Found initrd image: /boot/initrd.img-4.4.0-98-generic
Found linux image: /boot/vmlinuz-4.4.0-97-generic
Found initrd image: /boot/initrd.img-4.4.0-97-generic
Found linux image: /boot/vmlinuz-4.4.0-96-generic
Found initrd image: /boot/initrd.img-4.4.0-96-generic
Found linux image: /boot/vmlinuz-4.4.0-93-generic
Found initrd image: /boot/initrd.img-4.4.0-93-generic
Found linux image: /boot/vmlinuz-4.4.0-92-generic
Found initrd image: /boot/initrd.img-4.4.0-92-generic
done
Purging configuration files for linux-image-4.4.0-89-generic (4.4.0-89.112) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-89-generic /boot/vmlinuz-4.4.0-89-generic
Errors were encountered while processing:
 linux-image-extra-4.4.0-89-generic

Update 2

Success! Interestingly, dpkg --purge failed specifically on the 4.4.0-89-generic packages. I'm not really sure why. It worked for others and successfully freed up space. After running dpkg --purge on a few of the packages, I had enough space on /boot.

Commands that worked (with output omitted)

sudo dpkg --purge linux-image-4.4.0-92-generic linux-image-extra-4.4.0-92-generic
sudo dpkg --purge linux-image-4.4.0-96-generic linux-image-extra-4.4.0-96-generic
sudo dpkg --purge linux-image-4.4.0-93-generic linux-image-extra-4.4.0-93-generic
sudo dpkg --purge linux-image-4.4.0-97-generic linux-image-extra-4.4.0-97-generic

That cleared space on /root, which is now only 51% full.

user@host:~$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
udev                        1.9G     0  1.9G   0% /dev
tmpfs                       376M   11M  366M   3% /run
/dev/mapper/host--vg-root   225G   17G  198G   8% /
tmpfs                       1.9G  4.0K  1.9G   1% /dev/shm
tmpfs                       5.0M     0  5.0M   0% /run/lock
tmpfs                       1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                   472M  226M  222M  51% /boot
tmpfs                       376M     0  376M   0% /run/user/1000

Now apt-get -f install and subsequent apt-get purge <package> commands succeed.

8
  • 1
    I wonder what it looks like if you try dpkg --purge linux-image-extra-4.4.0-89-generic linux-image-4.4.0-89-generic.
    – sourcejedi
    Jul 12, 2018 at 16:01
  • The best way to remove old kernel and old packages is to use the command on terminal sudo apt-get autoremove. Did you already tried this ??
    – kannzzmm2
    Jul 12, 2018 at 16:02
  • @mitkan yes, I tried apt-get autoremove and get essentially identical output to apt-get -f purge <package> Jul 12, 2018 at 16:10
  • 1
    @mordoc @user535733 I'm not sure those are duplicates, as they also suggest running apt-get purge <package>, just with some other commands to list all the old packages desired to remove. My issue is that apt-get purge <package> fails Jul 12, 2018 at 16:12
  • @sourcejedi That might work. Could running dpkg --purge cause issues for apt, since I would be manually removing packages? Jul 12, 2018 at 16:13

1 Answer 1

2

Posting answer to my own question based on a comment

The solution is to use dpkg --purge to remove old kernel packages. Specifically, the linux-image-x.x.xx-xxx-generic and linux-image-extra-x.x.xx-xxx-generic packages must be removed. dpkg still fails for me when I only specify one of them. Also, note that dpkg --purge still fails for some of the packages. I think it's due to some of the half-configured or half-installed packages, though I didn't check.

Here are the successful purge commands I ran:

sudo dpkg --purge linux-image-4.4.0-92-generic linux-image-extra-4.4.0-92-generic
sudo dpkg --purge linux-image-4.4.0-96-generic linux-image-extra-4.4.0-96-generic
sudo dpkg --purge linux-image-4.4.0-93-generic linux-image-extra-4.4.0-93-generic
sudo dpkg --purge linux-image-4.4.0-97-generic linux-image-extra-4.4.0-97-generic

Afterwards /root is only 51% filled, as opposed to the original 100%

# Original
user@host:~$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
~~~ snip ~~~
/dev/sda1                   472M  467M     0 100% /boot

# After dpkg --purge
user@host:~$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
~~~ snip ~~~
/dev/sda1                   472M  226M  222M  51% /boot

Now I can successfully fix the broken installs with

apt-get -f install
1
  • 1
    For future readers: Since linux-image-* packages do not place any files in /etc, --purge will do exactly the same as --remove. Some folks erroneously believe that --purge is some kind of 'force' removal - it's not.
    – user535733
    Jul 12, 2018 at 19:50

Not the answer you're looking for? Browse other questions tagged .