So I’ve been trying to update/upgrade my system/applications for the last few days and it has been erroring, I ignored it and now when I try to sudo apt upgrade it tells me that I have “Low Disk Space on “boot” The volume “boot” has only 0 bytes disk space remaining.”

What happens when I run sudo apt upgrade:

user@user:~$ sudo apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
4 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up initramfs-tools (0.136ubuntu6.6) ...
update-initramfs: deferring update (trigger activated)
Setting up linux-firmware (1.187.25) ...
update-initramfs: Generating /boot/initrd.img-5.11.0-43-generic
I: The initramfs will attempt to resume from /dev/dm-2
I: (/dev/mapper/data-swap)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block 
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.11.0-43-generic with 1.
dpkg: error processing package linux-firmware (--configure):
 installed linux-firmware package post-installation script subprocess returned error exit status 1
Setting up linux-image-5.11.0-44-generic (5.11.0-44.48~20.04.2) ...
I: /boot/initrd.img.old is now a symlink to initrd.img-5.11.0-44-generic
Setting up linux-image-5.11.0-46-generic (5.11.0-46.51~20.04.1) ...
I: /boot/initrd.img is now a symlink to initrd.img-5.11.0-46-generic
Processing triggers for initramfs-tools (0.136ubuntu6.6) ...
update-initramfs: Generating /boot/initrd.img-5.11.0-43-generic
I: The initramfs will attempt to resume from /dev/dm-2
I: (/dev/mapper/data-swap)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block 
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.11.0-43-generic with 1.
dpkg: error processing package initramfs-tools (--configure):
 installed initramfs-tools package post-installation script subprocess returned error exit status 1
Processing triggers for linux-image-5.11.0-44-generic (5.11.0-44.48~20.04.2) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.11.0-44-generic
I: The initramfs will attempt to resume from /dev/dm-2
I: (/dev/mapper/data-swap)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block 
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.11.0-44-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-5.11.0-44-generic (--configure):
 installed linux-image-5.11.0-44-generic package post-installation script subprocess returned error exit status 1
Processing triggers for linux-image-5.11.0-46-generic (5.11.0-46.51~20.04.1) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.11.0-46-generic
I: The initramfs will attempt to resume from /dev/dm-2
I: (/dev/mapper/data-swap)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block 
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.11.0-46-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-5.11.0-46-generic (--configure):
 installed linux-image-5.11.0-46-generic package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 linux-firmware
 initramfs-tools
 linux-image-5.11.0-44-generic
 linux-image-5.11.0-46-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)

Screenshot of /boot:

I am running elementary OS 6.1 Jólnir, built on Ubuntu 20.04.3 LTS using the Linux kernel 5.11.0-43-generic.

  • @libinator@lemmy.ml
    link
    fedilink
    32 years ago

    That’s not what will happen. Note the version number in my reply. Ubuntu based distros won’t remove old kernels after updating to newer kernels. This is probably what’s taking space in your /boot partition.

    In the screenshot you posted, there are 5 kernels:

    • vmlinuz-5.11.0-40-generic
    • vmlinuz-5.11.0-41-generic
    • vmlinuz-5.11.0-43-generic
    • vmlinuz-5.11.0-44-generic
    • vmlinuz-5.11.0-46-generic

    But there are only three initramfs images:

    • initrd.img-5.11.0-40-generic
    • initrd.img-5.11.0-41-generic
    • initrd.img-5.11.0-43-generic

    It is likely that your boot partition doesn’t have enough space to store the initramfs image for booting kernels 5.11.0-44 and 5.11.0-46. To make enough space, you can remove the old kernels. According to your uname -a output, you are currently running kernel 5.11.0-43. And I assume you have no problem with the current kernel. If that is the case, there is no need for kernel 5.11.0-40 and 5.11.0-41.

    So, you can remove the two kernels. Old kernels are probably not removed by default so that you can boot to the previous kernel if the latest kernel has issues. After doing so, reboot to ensure nothing has gone wrong. Now, try sudo apt upgrade again, which should hopefully install the latest kernel and generate its initrd file. Reboot to the newly installed kernel and try sudo apt autoremove to remove any remaining pacakges as @kromonos@fapsi.be suggested

    • @asdflkjasdf@lemmy.ml
      link
      fedilink
      22 years ago

      Okay, I ran sudo apt remove linux-image-5.11.0-40 and then it started doing some stuff, from what I remember reading it did something like trying to uninstall kernel 40 but also wanting to reinstall it as soon as it did that, and complain about dependencies. Now my PC is bricked, I try to boot it and it doesn’t let me decrypt my machine so it stays in boot menu frozen even though it gives me two choices. Before that I can choose advanced settings from where I can choose which kernel to run my machine, but it just gives me this error:

      • krolden
        link
        fedilink
        12 years ago

        You didn’t make the new initrd so its trying to look for a kernel that isn’t there. Boot to a lived and unlock the disk with cryptsetup and mount, then chroot into your install and rerun update-initramfs and clear out your old kernels in /boot. If that doesn’t work, backup all your files and reinstall unless you wanna continue down this rabbit hole of recovering a broke install.

        You won’t like hearing this but breaking your install is just another step in learning what not to do when running a linux system. Its how I learned and how everyone I know learned. Break it and fix it, if it isn’t broke then break it and fix it anyway.

            • @asdflkjasdf@lemmy.ml
              link
              fedilink
              12 years ago

              Okay, I managed to chroot, now I don’t understand the part where I reinstall initramfs and clear the old kernels in /boot. Am I supossed to run sudo apt update initramfs and then delete all the kernel files in /boot that are previous to the linux-image-5.11.0-43 which is the one I’m using?

              • @libinator@lemmy.ml
                link
                fedilink
                12 years ago

                sudo update-initramfs

                Don’t delete any kernels (vmlinuz-*) or initrd images (initrd.img-*), just to ensure nothing bad happens again. And, after updating the initramfs, run sudo update-grub. If you can boot into a livecd, could you post a screenshot of everything in /boot like you did in the original post?