I have a Dell Inspiron 3647 desktop with Ubuntu 20.04 LTS (Focal Fossa).
How can I check the bios firmware version from inside Ubuntu and update it (if necessary) without using MS Windows?
I have a Dell Inspiron 3647 desktop with Ubuntu 20.04 LTS (Focal Fossa).
How can I check the bios firmware version from inside Ubuntu and update it (if necessary) without using MS Windows?
Notes:
Warning: electrical power outage during bios firmware installation may result in irreversible damage! Be sure to avoid it!
1. Update using Linux Vendor Firmware Service (LVFS) (available for some computers from 2015 onwards)
Go to the LVFS Devices Website and check the computer models available by this service. Until this point, Dell and Lenovo are the two vendors with the largest coverage.
If your computer is on the list, proceed with this section. If not, check the following sections of this guide.
Install fwupd (if not already installed):
sudo apt install fwupd
Start the daemon service:
sudo service fwupd start
Refresh the list of available firmware updates:
sudo fwupdmgr refresh
List devices connected and supported:
fwupdmgr get-devices
List updates available (for previously listed devices):
fwupdmgr get-updates
Install the firmware update (if available):
sudo fwupdmgr update
Reboot the machine to complete the update installation process.
If this section suited, you should be done at this point.
This is the newest and more convenient way to update bios firmware from within a GNU/Linux OS. It's an effort from many hardware vendors to offer the updates right out-of-the-box for Linux users. More information at Linux Vendor Firmware Service (LVFS).
2. Check the installed bios firmware version
sudo dmidecode -s bios-version
3. Check the installed bios firmware release date
sudo dmidecode -s bios-release-date
4. Find the latest bios firmware version available for your computer from Dell
Be sure to check the integrity of the downloaded file by running a checksum:
sha256sum [/path/to/file.exe] | grep [SHA-256 hash informed on webpage]
If the output hash is printed in a different color (highlighted), like in red, your good to proceed.
5. Update using Flash Boot (available for computers from 2015 onwards)
This section is suitable if your bios offers the option BIOS Flash Update in Boot Menu (image below).
/boot/efi/ directory.6. Update using FreeDOS (bios without Flash Boot feature - older hardware)
dir to list the directories and files available from the USB drive. You should see the bios executable file, besides the FreeDOS files.Copying the downloaded BIOS executable to /boot/efi and then following procedure 5 (Starting the computer with F12 pressed to enter the BIOS Flash Update procedure) worked out for me as the most simple and reliable method to update the Dell BIOS. No hassle with booting FreeDOS, no hassle to get a USB stick mounted to the BIOS Flash Update (never worked for me on my USB-C only XPS 13), no need to temporarily changing anything of the BIOS settings.
I got my bios updated, thanks for the long writeup, had to innovate a bit however. Very important point, I lost a lot of time with this - you cannot make a Windows or DOS bootable USB from Linux with the usual tools dd or UNetbootin. I don't know why but don't try as it will fail quietly. More detail here :
How can I create a Windows bootable USB stick using Ubuntu?
I ended up using WoeUSB.
Eventually the Dell Precision desktop did boot into FreeDOS from the USB I made with WoeUSB. The BIOS update .exe I had downloaded did start to run but failed to complete.
Then I read this :
Just received an e-mail from one of the developers of FreeDOS. Long story short: 3521A16.exe is NOT a DOS application, and will not run under FreeDOS. It may be a "Universal (Windows/MS DOS)" application, whatever the hell that is, and it may run from a command line operating within a Windows environment, but it will not run in a pure DOS environment
So I tried instead of FreeDOS Hiren's BootCD (also created with WoeUSB) :
It was an interesting 'rescue' image but unfortunately the Bios update file would not run from there either! Hiren's was however useful for its Windows password cracking tool to unlock an old (legitimate) Windows 7 I had on another drive but had lost its passwords. I booted into that and from there the Dell Bios update ran very nicely.
That's not what this question is about ("without using Windows") however it may help someone to know the details to create a Windows or DOS bootable from Linux and that FreeDOS or Hirens may not even run the Bios update file. I would suggest if you find yourself in that situation after trying both FreeDOS and Hirens, try to get a real Windows image just for one-off use for this purpose.