For a long time, it wasn’t possible to update firmware on Linux. Instead, users would need to install Windows on a separate hard drive or partition to get the latest updates for their devices, and BIOS. Thankfully, times are changing. In this guide, we’ll go over how you can update the vendor firmware on your Linux PC.
Note: it is only possible to update Linux firmware inside of UEFI. If you are using a BIOS version of your Linux operating system, please re-, install it in UEFI mode.
Before we begin
Fwupd is what is used to update the firmware in Linux, through the Linux Vendor Firmware project. However, please understand that not all computer manufacturers participate in providing firmware to the LVFS project. As a result, following this guide may not update the firmware on your system. If this is the case, you may need to do it in Windows.
There are lots of Linux-friendly computer manufacturers that are participating in the LVFS project. They are Dell, HP, Logitech, Thinkpad, and others. If you’re looking to update the firmware on your Linux laptop or desktop, check out the Linux Vendor Firmware website. They have information on who’s participating in LVFS, and who plans to in the future.
Installing Fwupd on Linux
To update the firmware of your laptop or desktop computer, you must install the Fwupd tool. As it stands, some Linux operating systems come with the Fwupd app pre-installed. However, this isn’t the case with every Linux distribution on the market. So, we must demonstrate how to install Fwupd on Linux.
To start the installation of Fwupd on your Linux PC, open up a terminal window. To do this, press Ctrl + Alt + T or Ctrl + Shift + T on the keyboard. Then, once the terminal window is open and ready to use, follow the command-line instructions outlined below that correspond with the Linux operating system you are currently using.
On Ubuntu, users can install Fwupd with the following Apt command.
sudo apt install fwupd
Those using Debian can get Fwupd up and running with the Apt-get command.
sudo apt-get install fwupd
Arch Linux users can get their hands on the Fwupd firmware update program with the following Pacman command.
sudo pacman -S fwupd
On Fedora Linux, users can install the Fwupd application with the Dnf command in a terminal.
sudo dnf install fwupd
OpenSUSE users can easily install the Fwupd firmware updater app with the Zypper command.
sudo zypper install fwupd
The Linux vendor firmware project is new, but supporting a lot of modern Linux operating systems, so chances are your distribution has it in its software repositories. To install Fwupd, open up a terminal, search for “fwupd,” and install it the way you typically install programs.
Check for updates with Fwupd manager
The Fwupd manager needs to download updates on your computer before it can be used to get new firmware for devices. To get updates from the Fwupd manager, open up a terminal window by pressing Ctrl + Alt + T or Ctrl + Shift + T on the keyboard. Then, run the service fwupd start.
sudo service fwupd start
After starting the service on your system, run the fwupdmgr refresh command to check for available firmware updates for your devices.
sudo fwupdmgr refresh
Please note that if you run the fwupdmgr refresh command, you may not see any updates available. For best results, run the fwupdmgr get-devices command. It can scan all hardware devices connected to your Linux PC, and determine if updates are available for it. Best of all, it can tell you why firmware updates cannot be downloaded.
Or, save the fwupd device information to a text file for later reading with:
fwupdmgr get-devices ~/firmware-info.txt
Installing firmware updates with fwupdmgr
Firmware updates can quickly be installed (once Fwupd is refreshed) with the update command. In a terminal window, use the fwupdmgr update command to install any pending firmware updates.
Note: installing computer firmware is a delicate process. Do not turn off your computer, unplug it, or suspend it during the update process. You could permanently damage your hardware!
sudo fwupdmgr update
Updating firmware in Gnome Software
Updating the firmware for Linux computers in the terminal is pretty useful. However, if you’re new to Linux, you may not want to deal with the command-line. Thankfully, Gnome Software can handle Linux firmware updates as well! So, if you’re using a desktop environment that has Gnome Software, do the following to update your firmware.
Step 1: Find “Updates” and click on it with the mouse to access Gnome Software’s software updater.
Step 2: Click the refresh button for the latest updates. If you have firmware updates for your Linux PC, they will show up in the list of updates ready to install.
Step 3: Click the “Update All” button to install the firmware updates.