How To Update Samsung SSD Firmware on Linux

Typically, we apply firmware updates to fix a security issue and enhance SATA/PCIe/NVMe solid-state (SSD) drive performance. Failing to install available updates may lead to vulnerable SSD. This quick guide explains how to update Samsung SSD firmware on Linux without using Windows operating system.

Linux comes with firmware update manager client utility called fwupdmgr. It makes updating firmware on Linux automatic, safe and reliable. The same command can update Samsung SSD. The fwupd service runs on Linux and BSD, which is part of LVFS. It allows firmware to update device firmware on the local machine. GNOME maintainer Richard Hughes develops it. LVFS is an acronym for The Linux Vendor Firmware Service, a secure portal for hardware vendors to upload firmware updates.
Tutorial details
Difficulty level Advanced
Root privileges Yes
Requirements Linux with fwupdmgr (LVFS)
Est. reading time 3 minutes

The firmware is updates released for Lenovo ThinkPad, ThinkCentre, ThinkStation, and IdeaCentre. The supported SAMSUNG SSDs as per release notes are:

  • MZVLB512HBJQ-000L7 / 00AL7
  • MZVLB1T0HBLR-000L7 / 00AL7 and 4M2QEXF7

Samsung is considering adding firmware to the LVFS in the future, too, and we might soon see updates for other OEM providers.

Updating Samsung SSD Firmware on Linux

Warning: Do NOT turn off your computer or remove the AC adapter while firmware updating is in progress. Always keep all verified backups in place. The nixCraft or author is not responsible for any data loss. The computer shall be restarted after updating firmware completely. The device may not properly function until you shut down or reboot PC. Make sure you close down all apps before typing any commands.

Method 1 – Updating firmware in Linux via software center

It would help if you had a GNOME desktop, and I tested it on Ubuntu. All you have to do is press the Super key. Then open the Software Center app and go to the Updates tab:

Click on device name to read details about pending updates:

Now all left is to click on the Update button, and it will start updating the device. Make sure you reboot your Linux computer:
sudo reboot

Method 2 – Upgrading Samsung SSD firmware in Linux via command-line

Open the Terminal application. It is possible GUI method may not work due to some reasons. Hence, we can use the CLI.

Step 1 – Verify that LVFS supports your SSD

Make sure your OEM or manufacturer supports SSD upgrades on Linux. Check it online. Otherwise, there is no point in typing the following commands.

Step 2 – Using fwupd for updating SSD firmware

Let us get a list all devices that support firmware updates, run:
sudo fwupdmgr get-devices

Please note dow the current SSD firmware version such as 4M2QEXF7.

Step 3 – Download and refresing metadata from LVFS server

We need to type the following command:
sudo fwupdmgr refresh
## We can also use '--force' option to refresh again. ##
sudo fwupdmgr refresh --force

Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz
Downloading…             [***************************************]
Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc
 
Successfully downloaded new metadata: 7 local devices supported

Step 4 – Apply upgrades

Once the database grabbed, run the firmware update, execute:
sudo fwupdmgr update

Summing up

That is all you have to do to apply SSD firmware update in Linux. I tested this with Ubuntu but should work with any modern distro such as Fedora, Debian, Arch, Gentoo, and so on as long as you have LVFS, and the device is supported. The dream of a Linux desktop gets better with such a tool that easily allows firmware updates in Linux.


🐧 Get the latest tutorials on Linux, Open Source & DevOps via RSS feed or Weekly email newsletter.

🐧 0 comments... add one


CategoryList of Unix and Linux commands
Disk space analyzersdf duf ncdu pydf
File Managementcat cp mkdir tree
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Modern utilitiesbat exa
Network UtilitiesNetHogs dig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg glances gtop jobs killall kill pidof pstree pwdx time vtop
Searchingag grep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04
0 comments… add one

Leave a Reply

Your email address will not be published.

Use HTML <pre>...</pre> for code samples. Still have questions? Post it on our forum