11

I upgraded to 20.04 yesterday. I just noticed that in Ubuntu Software there is an update for Dell Inc. System Firmware, but my system does not have enough space to run the update.

enter image description here

Is there any way except by resizing the partition with gparted (or similar) to clean this location up from Ubuntu?

I want to keep the Windows partition.

enter image description here

With ls -alt /boot/efi/EFI/ubuntu/

total 4248
-rwxr-xr-x 1 root root     108 Mai  7 22:04 BOOTX64.CSV
-rwxr-xr-x 1 root root     117 Mai  7 22:04 grub.cfg
-rwxr-xr-x 1 root root 1677176 Mai  7 22:04 grubx64.efi
-rwxr-xr-x 1 root root 1269496 Mai  7 22:04 mmx64.efi
-rwxr-xr-x 1 root root 1334816 Mai  7 22:04 shimx64.efi
drwxr-xr-x 6 root root    1024 Feb 18 18:45 ..
drwxr-xr-x 3 root root    1024 Jan 15 19:26 .
drwxr-xr-x 2 root root    1024 Jan 15 19:26 fw
-rwxr-xr-x 1 root root   61833 Nov 13 19:46 fwupdx64.efi

In the fw folder

-rwxr-xr-x 1 root root 11500365 Jan 15 19:26 fwupd-33773727-8ee7-4d81-9fa0-57e8d889e1fa.cap
-rwxr-xr-x 1 root root    57218 Jan 15 19:26 fwupd-3b8c8162-188c-46a4-aec9-be43f1d65697.cap

In the Dell folders

drwxr-xr-x 4 root root 1024 Feb 18 18:45 .
drwxr-xr-x 6 root root 1024 Feb 18 18:45 ..
drwxr-xr-x 2 root root 6144 Feb 18 18:45 logs
drwxr-xr-x 3 root root 1024 Dez 10 11:55 Bios

ls -alt /boot/efi/EFI/Dell/Bios/

total 3
drwxr-xr-x 4 root root 1024 Feb 18 18:45 ..
drwxr-xr-x 3 root root 1024 Dez 10 11:55 .
drwxr-xr-x 2 root root 1024 Dez 10 11:55 Recovery

ls -alt /boot/efi/EFI/Dell/Bios/Recovery/

total 21288
drwxr-xr-x 2 root root     1024 Dez 10 11:55 .
drwxr-xr-x 3 root root     1024 Dez 10 11:55 ..
-rwxr-xr-x 1 root root 10874905 Dez 10 11:55 BIOS_CUR.RCV
-rwxr-xr-x 1 root root 10920235 Jun  6  2019 BIOS_PRE.rcv
6
  • Just a couple of thoughts. What is in the fw directory? What is in the dell directory? Is there any thing there that looks like old firmware that could be moved to another location.
    – PonJar
    May 8, 2020 at 22:22
  • @PonJar I've updated the question. It doesn't look like anything can be removed, as far as I can see. May 9, 2020 at 12:26
  • Stephen Daddona’s answer may enable you to install the update but I don’t think the system will boot like that. However it may be that after the update the space required is within the capacity of your EFI partition so it could be returned to normal. This is just wishful thinking though. Does the update bring anything useful? Alternatively the first answer in the following link describes the process to get a bigger EFI partition. Seems you have to make space, delete the old one, and create a new larger one. superuser.com/questions/1230741/…
    – PonJar
    May 9, 2020 at 16:43
  • @PonJar thanks, that seems to involve using gparted or similar, which I will do if need be, but I was looking for a solution that didn't require that. I suppose it's not possible. May 9, 2020 at 17:40
  • 1
    Bit of a long shot. How many HDD/SDD/etc do you have in this machine? I have a desktop with two storage devices. Both have an EFI partition. One is untouched since the original Windows install. The other has the stuff to boot Linux and a copy of the stuff to boot Windows. This device boots first, I get to choose Linux and the family can go Windows. Apart from a simple copy of the Windows folder I never touched the original EFI. So if you have a second device you could create a larger EFI and never touch the original. Probably doesn’t fit your scenario but thought I’d mention it in case.
    – PonJar
    May 9, 2020 at 20:40

4 Answers 4

23

If you have both Windows and Ubuntu OSs, which is probably the case here then in Ubuntu

  1. Open the terminal and go to power bash sudo bash
  2. Move the Microsoft folder to another drive mv /boot/efi/EFI/Microsoft /home
  3. Run the upgrade and restart as required. It will have enough space now as Microsoft folder is about 14 MB +
  4. Let's move back the Microsoft folder to efi, run sudo bash and mv /home/Microsoft /boot/efi/EFI
  5. 😊 Upvote!
4
  • Is this safe to do? My Microsoft folder is now 25MB and I wanna move it but I worried about the whole "FAT32 might get corrupted issue". This is my work computer so I can't really reinstall the entire thing from scratch if something fails at the moment.
    – rgin
    Mar 17, 2022 at 14:10
  • I have tested it many times. Both OSs are working fine. Mar 22, 2022 at 11:59
  • 1
    Yes, I can also independently confirm that it works. Tried on Ubuntu 20.04 dual boot with windows 11
    – Mwiza
    Apr 11, 2022 at 10:39
  • 1
    Thanks for the answer. I can confirm this method. I had managed to free up the space by moving Microsoft fonts to a temporary directory. Of course, I moved them back after the update.
    – dyedfox
    Apr 20, 2023 at 12:40
5

Update:

I followed these steps and it's a better way of doing it than moving fonts manually.

apt update && sudo apt upgrade -y
service fwupd start
fwupdmgr refresh
fwupdmgr update

Please upvote!

Original comment: In my case I resolved it by simply finding some (probably) unimportant files and moving them to a backup folder outside of /boot/efi. For example, the boot-repair/log files came to around 3 MB, and some of the /EFI/Microsoft/Boot files had folders for languages I would probably never need. This allowed me just enough space to perform the update.

The only problem was that on power up it went straight to Windows, without giving me the grub menu after the BIOS screen. I resolved that, in Windows, by opening a command prompt as system admin, then running

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

But I'm sure you're aware of all the warnings, so be careful to do any backups before this.

6
  • 1
    I also fixed it with moving some of the EFI/Microsoft/Boot languages and fonts. I can't recommend this, because moving the files back is cumbersome due to FAT ownership problems. But it still all works properly (besides Windows boot does not have text anymore ..duh). Mar 15, 2021 at 11:55
  • @JacksOnF1re I found a better way of doing it. I've updated the answer. Apr 10, 2021 at 19:05
  • 1
    In my case, this results in the very same error that pops up when trying to update the firmware via the GUI: "/boot/efi does not have sufficient space, required 33,6 MB, got 28,1 MB" Sep 24, 2021 at 8:59
  • @FrancescoCariaggi Did you try the first and second comments above? Sep 24, 2021 at 18:05
  • The update answer doesn't work for me. Still get "not enough space" Dec 3, 2021 at 8:31
1

Move all the contents of the directory that is too small to a directory on another partition or hard drive where there is room. Then mount that directory into the parent directory of the one that was too small.

2
  • This link should help serverfault.com/questions/67038/…
    – user573739
    May 8, 2020 at 23:05
  • I’m not sure this is a permanent solution. It should allow you to install the firmware but presumably it needs to be in the EFI partition at boot time before any mount can be re-establisded. Perhaps the mount could be replaced with hard links once installed. Hopefully others will advise
    – PonJar
    May 9, 2020 at 8:45
0

I had the same problem, and I just moved fonts from Microsoft directory to another place, finished updates and moved them back again.

Fonts Path: /boot/efi/EFI/Microsoft/Boot/Fonts

You must log in to answer this question.

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