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:
- Download the firmware package from LVFS
- Verify the digital signature
- 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 Distribution | Minimum Version Supporting fwupd | Preinstalled? | Installation Command (if not preinstalled) |
|---|---|---|---|
| Ubuntu | 18.04 LTS | ✅ Most desktop editions | sudo apt install fwupd |
| Debian | 10 (Buster) | ⚠ Sometimes (depends on flavor) | sudo apt install fwupd |
| Fedora | 29 | ✅ GNOME desktop | sudo dnf install fwupd |
| openSUSE Leap | 15.0 | ✅ Yes | sudo zypper install fwupd |
| openSUSE Tumbleweed | All rolling versions | ✅ Yes | sudo zypper install fwupd |
| Arch Linux | All supported | ⚠ Not installed by default | sudo pacman -S fwupd |
| Manjaro | All supported | ⚠ Not installed by default | sudo pacman -S fwupd |
| Pop!_OS | 20.04 and later | ✅ Yes | sudo apt install fwupd (if missing) |
| Elementary OS | 6.0 (Odin) | ✅ Yes | sudo apt install fwupd (if missing) |
| Linux Mint | 20 and later | ✅ Yes | sudo apt install fwupd |
| MX Linux | 21 and later | ⚠ Optional | sudo apt install fwupd |
| EndeavourOS | All supported | ⚠ Not installed by default | sudo pacman -S fwupd |
| Alpine Linux | 3.15+ | ⚠ Not preinstalled | sudo apk add fwupd |
| Void Linux | Current | ⚠ Not preinstalled | sudo xbps-install -Sy fwupd |
| KDE Neon | 5.x series | ✅ Yes | sudo 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 refreshto update metadata andfwupdmgr get-updatesto 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.
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 ❤️!
We do not support or promote any form of piracy, copyright infringement, or illegal use of software, video content, or digital resources.
Any mention of third-party sites, tools, or platforms is purely for informational purposes. It is the responsibility of each reader to comply with the laws in their country, as well as the terms of use of the services mentioned.
We strongly encourage the use of legal, open-source, or official solutions in a responsible manner.


Comments