• SupportSolved
  • Failed to install initrd [...] No space left on device

After updating today, I obviously ran out of /boot space:

 [✓] Syncing filesystems                                                success
 [✓] Updating dynamic library cache                                     success
 [✗] Updating clr-boot-manager                                           failed

A copy of the command output follows:

[FATAL] cbm (../src/bootman/kernel.c:L668): Failed to install initrd /boot/initrd-com.solus-project.current.5.10.9-169: No space left on device
[FATAL] cbm (../src/bootman/update.c:L250): Failed to install default-current kernel: ///usr/lib/kernel/com.solus-project.current.5.10.9-169


 [✓] Running depmod on kernel 4.14.216-165.lts                          success
 [✓] Running depmod on kernel 5.10.9-169.current                        success
 [✓] Updating system users                                              success
 [✓] Updating systemd tmpfiles                                          success
 [✓] Reloading systemd configuration                                    success
 [✓] Re-starting vendor-enabled .socket units                           success
 [✓] Restarting VirtualBox services                                     success
 [✓] Compiling glib-schemas                                             success
 [✓] Updating mimetype database                                         success
 [✓] Updating icon theme cache: hicolor                                 success
 [✓] Updating icon theme cache: Papirus-Dark                            success
 [✓] Updating icon theme cache: Papirus-Adapta-Nokto                    success
 [✓] Updating icon theme cache: Papirus-Adapta                          success
 [✓] Updating icon theme cache: solus-sc                                success
 [✓] Updating icon theme cache: Papirus                                 success
 [✓] Updating icon theme cache: Papirus-Light                           success
 [✓] Updating desktop database                                          success
 [✓] Updating manpages database                                         success
 [✓] Reloading udev rules                                               success
 [✓] Applying udev rules                                                success
sudo clr-boot-manager list-kernels
  com.solus-project.current.5.10.9-169
  com.solus-project.current.5.10.7-168
  com.solus-project.current.5.10.5-167
  com.solus-project.lts.4.14.216-165
  com.solus-project.lts.4.14.215-164
  com.solus-project.lts.4.9.205-147
ls -l /boot/
total 209924
-rw-r--r-- 1 root root  8029888  9. Jan 23:40 com.solus-project.current.5.10.5-167
-rw-r--r-- 1 root root  8189088 16. Jan 16:43 com.solus-project.current.5.10.7-168
-rw-r--r-- 1 root root  8190272 23. Jan 17:13 com.solus-project.current.5.10.9-169
-rw-r--r-- 1 root root  9905664 16. Jan 16:43 com.solus-project.lts.4.14.215-164
-rw-r--r-- 1 root root  9913856 23. Jan 17:13 com.solus-project.lts.4.14.216-165
-rw-r--r-- 1 root root  7935072  6. Dez 2019  com.solus-project.lts.4.9.205-147
drwxr-xr-x 5 root root     1024 16. Jan 16:43 grub
-rw-r--r-- 1 root root 31583025  9. Jan 23:40 initrd-com.solus-project.current.5.10.5-167
-rw-r--r-- 1 root root 31926467 16. Jan 16:43 initrd-com.solus-project.current.5.10.7-168
-rw-r--r-- 1 root root 30600775 16. Jan 16:43 initrd-com.solus-project.lts.4.14.215-164
-rw-r--r-- 1 root root 42406395 23. Jan 17:13 initrd-com.solus-project.lts.4.14.216-165
-rw-r--r-- 1 root root 26262160  6. Dez 2019  initrd-com.solus-project.lts.4.9.205-147
drwx------ 2 root root    12288 25. Apr 2019  lost+found

I'm afraid to reboot now. How can I remove older kernels that are taking up space and repair the installation?

Can I just delete the older com.solus-project and initrd-com.solus-project files on /boot and run "sudo clr-boot-manager update"?

I found https://discuss.getsol.us/d/4023-updating-clr-boot-manager-failed-no-space-left but the solution discussed there is about EFI and extending the partition.

  • ryzee replied to this.
  • ryzee I ended up just deleting the oldest version of the file pairs com.solus-project.lts/initrd-com.solus-project.lts and com.solus-project.current/initrd-com.solus-project.current in /boot.

    Then clr-boot-manager update and reboot. That did the job.

    cd /boot
    sudo rm com.solus-project.lts.4.9.205-147 initrd-com.solus-project.lts.4.9.205-147 com.solus-project.current.5.10.5-167 initrd-com.solus-project.current.5.10.5-167
    sudo clr-boot-manager update

    Note to other readers: above are the file versions for my system at this moment. Do not copy&execute on your system!

    sebastian-brandt

    I have 2 machines running Solus, 1 updated with no problem, the other had this exact problem.

    Upgraded lsof
    [✓] Syncing filesystems success
    [✓] Updating dynamic library cache success
    [✗] Updating clr-boot-manager failed

    
    [FATAL] cbm (../src/bootman/kernel.c:L668): Failed to install initrd /boot/initrd-com.solus-project.current.5.10.9-169: No space left on device
    [FATAL] cbm (../src/bootman/update.c:L250): Failed to install default-current kernel: ///usr/lib/kernel/com.solus-project.current.5.10.9-169
    
    
     [✓] Running depmod on kernel 5.10.9-169.current                        success
     [✓] Running depmod on kernel 4.14.216-165.lts                          success
     [✓] Updating mimetype database                                         success
     [✓] Updating icon theme cache: korla-pgrey                             success
     [✓] Updating icon theme cache: Papirus-Dark                            success
     [✓] Updating icon theme cache: korla                                   success
     [✓] Updating icon theme cache: Papirus-Light                           success
     [✓] Updating icon theme cache: korla-light-panel                       success
     [✓] Updating icon theme cache: Papirus                                 success
     [✓] Updating icon theme cache: korla-light                             success
     [✓] Updating desktop database                                          success
     [✓] Updating manpages database                                         success

    I'm wondering what DE are you using and also are you using LVM?

      sebastian-brandt

      also worth mentioning that both machines were set up with a current kernel/older current and an
      LTS kernel/older LTS and neither machine is EFI.

      ryzee DE is Budgie and I use LVM because of LUKS. I also have the current and lts kernel installed in case I run into issues with new current kernel revisions.

      My boot partition is 280 MB. I suppose that was the default at the time of the installation 1.5 years ago because I don't remember tinkering with the size when I installed.

      Solus seems to keep the last 3 kernels in /boot. Maybe with kernels getting larger this does not work anymore with my 280 MB boot partition?

        sebastian-brandt

        I think you may be right. The machine that I received this error on runs MATE but more to the point
        it has an LVM set up with with a boot partition the same size as yours (like yours I believe it to be
        the default from some time ago).

          sebastian-brandt
          I did successfully update to the newest kernel, yes. However I made the mistake of using Software Center
          to remove the LTS kernel (step 1) I think that has led to my current weird issue. I did a pretty quick history rollback
          to the previous update (step 2) and updated to the newest kernel. Then I had the newest kernel, the previous current and an LTS was showing in the clr-boot-manager list-kernels command even though my attempts at deleting it
          show 'file not found' messages. I then tried running clr-boot-manager update and recieved:

          [ERROR] cbm (../src/bootman/update.c:L238): Could not find default kernel for type lts, using highest relno
          Generating grub configuration file ...
          done

          which caused the backup current kernel to disappear so now I have the newest current kernel and
          the option of choosing a fictitious LTS kernel.

          So my laptop works great on the newest current kernel but I have no alternative kernel to boot to
          at the moment and a confused clr-boot-manager. Perhaps there's a way to communicate to clr-boot-manager
          that I no longer want the LTS kernels? Maybe a brute force removal in the boot directory? I don't know.
          I will (carefully) be exploring these options and others soon.
          I guess I'm saying that there is a right way to do it and I have made a mistake (although not a fatal one),
          so be careful! and please post what you decide to do...

            ryzee I feel like I should clarify a little bit -- my original plan was to just simply not use
            and delete the LTS kernels completely, which is why I was surprised to see one persisting after
            the successful update to the newest kernel.

            sebastian-brandt one more thing!! (sorry, obviously the coffee hasn't kicked in yet),
            steps 1 and 2 in previous post are backwards.

            ryzee I ended up just deleting the oldest version of the file pairs com.solus-project.lts/initrd-com.solus-project.lts and com.solus-project.current/initrd-com.solus-project.current in /boot.

            Then clr-boot-manager update and reboot. That did the job.

            cd /boot
            sudo rm com.solus-project.lts.4.9.205-147 initrd-com.solus-project.lts.4.9.205-147 com.solus-project.current.5.10.5-167 initrd-com.solus-project.current.5.10.5-167
            sudo clr-boot-manager update

            Note to other readers: above are the file versions for my system at this moment. Do not copy&execute on your system!

              sebastian-brandt So much thanks 😀 it worked for me. I had the same problem over the last update and noticed it wen finishing it. And as you said in your note I looked on my system, in my case was:
              sudo rm com.solus-project.lts.4.14.201-162 com.solus-project.lts.4.14.215-164 com.solus-project.current.5.10.5-167 com.solus-project.current.5.10.7-168
              I just let the newest one on lts and current just in case, update clr-boot-manager and done, no problems

              4 years later

              Its 09. Nov. .2024 and I had the same issue. After an huge update there was the same message about "insufficient" disk space on EFI partition. So I moved all LTS kernel files and some older kernel version and hey, clr-boot-manager update is doing his job. So I have to say Thanks

              Edit:
              In my case the /boot folder was empty. I has to mount the EFI partition manually. From there I moved all unused kernel files (moved, not deleted, for safety)...

                tresjam In my case the /boot folder was empty. I has to mount the EFI partition manually.

                Yes, /boot is not mounted by default. You can do so with sudo clr-manager mount-boot

                  Staudey Is there a reason for holding all these "old" Kernel versions? Is there an automatism for "cleaning" old versions, or could it hold the last 3 versions....

                    tresjam I think it's only supposed to keep the current versions (plus the backup entry for the old version after an upgrade, until the new one has been successfully booted a couple of times), but for some reason that sometimes bugs out.

                    3 months later

                    I had the same problem with the latest update. I just get a black screen.. Managed to enter command line and found there were 9 different kernels and I removed them (I think), as now I only get one on the list for sudo clr-boot-manager list-kernels. But it's not helping. Still 'no space left on device"

                    "installing extra initrd: /usr/lib64/kernel/initrd-com.solus-project.current.6.12.9-312nvidia
                    ... failed to instal extra initrds /usr/lib64/kernel/initrd-com.solus-project.current.6.12.9-312nvidia: No space left on device"

                    How do I make more space for the initrd (whatever that is..)? Any ideas?