Updating firmware on Linux is now straightforward thanks to fwupd, an open-source service that allows hardware vendors to distribute firmware updates through the Linux Vendor Firmware Service (LVFS).

The command-line tool fwupdmgr lets you check supported devices, download firmware, and install updates safely from the terminal.

Below is a step-by-step guide to updating firmware using fwupdmgr.

1. Install fwupd (if it isn’t already installed)

Most modern Linux distributions already include fwupd by default, including Ubuntu, Fedora Linux, and Debian.

If it isn’t installed, you can add it using your package manager.

Ubuntu / Debian

sudo apt install fwupd

Fedora

sudo dnf install fwupd

After installation, start the service if needed:

sudo systemctl start fwupd

2. Check which devices support firmware updates

First, list all hardware devices detected by fwupd.

fwupdmgr get-devices

This command shows:

  • supported devices
  • current firmware versions
  • hardware IDs
  • whether updates are available

Typical devices include BIOS/UEFI firmware, SSDs, USB devices, docks, and touchpads.

3. Refresh the firmware metadata

Before checking for updates, refresh the firmware database from LVFS.

sudo fwupdmgr refresh

To force downloading the latest metadata:

sudo fwupdmgr refresh --force

This ensures your system sees the most recent firmware releases from vendors.

4. Check for available firmware updates

Next, check whether updates are available for your devices.

fwupdmgr get-updates

The output will show:

  • device name
  • current firmware version
  • new firmware version
  • description of the update

5. Install firmware updates

To install available updates, run:

sudo fwupdmgr update

fwupd will then:

  1. Download the firmware package from LVFS
  2. Verify the digital signature
  3. Install the firmware using the device’s update protocol

Some firmware updates require a system reboot to complete the process.

6. Reboot if required

Certain firmware updates—especially BIOS or UEFI updates—are applied during the next boot.

fwupd will notify you if a reboot is required.

Simply restart your system:

sudo reboot

During startup, the firmware update will be applied automatically.

7. Verify the firmware version

After the update, you can confirm the new firmware version:

fwupdmgr get-devices

The output should now display the updated firmware version.

Optional: Get firmware security information

fwupd can also show security details about your system firmware.

fwupdmgr security

This command checks firmware security features such as:

  • UEFI Secure Boot
  • Trusted Platform Module
  • BIOS write protections

Optional: Update only a specific device

If you want to update a single device instead of everything:

fwupdmgr update DEVICE-ID

You can find the device ID using:

fwupdmgr get-devices

Tips Before Updating Firmware

Before performing firmware updates:

  • Keep your laptop plugged into power
  • Avoid shutting down the system during updates
  • Backup important data
  • Read firmware release notes when available

Firmware updates are generally safe, but interruptions during the process can cause hardware issues.

Linux DistributionMinimum Version Supporting fwupdPreinstalled?Installation Command (if not preinstalled)
Ubuntu18.04 LTS✅ Most desktop editionssudo apt install fwupd
Debian10 (Buster)⚠ Sometimes (depends on flavor)sudo apt install fwupd
Fedora29✅ GNOME desktopsudo dnf install fwupd
openSUSE Leap15.0✅ Yessudo zypper install fwupd
openSUSE TumbleweedAll rolling versions✅ Yessudo zypper install fwupd
Arch LinuxAll supported⚠ Not installed by defaultsudo pacman -S fwupd
ManjaroAll supported⚠ Not installed by defaultsudo pacman -S fwupd
Pop!_OS20.04 and later✅ Yessudo apt install fwupd (if missing)
Elementary OS6.0 (Odin)✅ Yessudo apt install fwupd (if missing)
Linux Mint20 and later✅ Yessudo apt install fwupd
MX Linux21 and later⚠ Optionalsudo apt install fwupd
EndeavourOSAll supported⚠ Not installed by defaultsudo pacman -S fwupd
Alpine Linux3.15+⚠ Not preinstalledsudo apk add fwupd
Void LinuxCurrent⚠ Not preinstalledsudo xbps-install -Sy fwupd
KDE Neon5.x series✅ Yessudo apt install fwupd (if missing)

Notes:

  • Most GNOME-based distributions ship fwupd preinstalled.
  • Server or minimal installs often require manual installation.
  • fwupd automatically connects to LVFS (Linux Vendor Firmware Service) to fetch firmware updates.
  • After installation, run fwupdmgr refresh to update metadata and fwupdmgr get-updates to list available firmware updates.

Conclusion

Using fwupd and the fwupdmgr command-line tool, Linux users can easily install firmware updates directly from the operating system. By connecting to the Linux Vendor Firmware Service, fwupd provides secure, vendor-approved firmware packages for a wide range of devices.

This makes firmware maintenance on Linux simpler, safer, and comparable to the update experience on other operating systems.

Did you enjoy this article? Feel free to share it on social media and subscribe to our newsletter so you never miss a post!

And if you'd like to go a step further in supporting us, you can treat us to a virtual coffee ☕️. Thank you for your support ❤️!
Buy Me a Coffee

Categorized in: