Fwupd ist ein Daemon, der bei der Verwaltung der Installation von Firmware unter Linux hilft. Fwupd ist standardmäßig so konfiguriert, dass es Firmware vom Linux Vendor Firmware Service (LVFS) herunterlädt. LVFS ist eine sichere Website, die es Hardwareanbietern ermöglicht, ihre Firmware-Updates hochzuladen.
Fwupd zielt darauf ab, Firmware-Updates auf Linux-Systemen automatisch, sicher und zuverlässig zu machen. Es wird hauptsächlich zum Aktualisieren der UEFI-Firmware verwendet. Es gibt viele Unternehmen, die bereits native Firmware-Updates unterstützen, wie Dell, Lenovo, HP, Intel und System76.
In diesem Tutorial lernen wir, wie man Firmware aktualisiert auf Ubuntu mit fwupd.
fwupd unter Ubuntu installieren
Fwupd ist standardmäßig in neueren Versionen von Ubuntu verfügbar. Falls das Tool nicht installiert ist, führen Sie den folgenden Befehl aus, um es aus dem Ubuntu-Repository zu installieren.
$ sudo apt install fwupd
Um ein bestimmtes Gerät über die Befehlszeile zu aktualisieren, das eine neueste fwupd-Version benötigt, installieren Sie fwupd mit Snap oder mit Flatpak.
Unterstützte Geräte anzeigen
Verwenden Sie den folgenden Befehl, um Geräte mit von fwupd unterstützter Firmware zu erkennen und anzuzeigen.
$ fwupdmgr get-devices
Ausgabe:
20FMS1W300
│
├─System Firmware:
│ Device ID: 218dfc72dd94339f3c3fe47b0df642273d049170
│ Current version: 0.1.41
│ Minimum Version: 0.1.22
│ Vendor: LENOVO (DMI:LENOVO)
│ GUIDs: c9a0acef-aa63-4b85-a52d-a9384163c0e8
│ 230c8b18-8d9b-53ec-838b-6cfc0383493a
│ 717544ba-7153-5a85-be27-9c9ea9b078d0
│ Device Flags: • Internal device
│ • Updatable
│ • System requires external power source
│ • Supported on remote server
│ • Needs a reboot after installation
│ • Cryptographic hash verification is available
│ • Device is usable for the duration of the update
│
├─TS240GSSD220S:
│ Device ID: e421b2fc248391f6fe3e55ddbb3c9043be068bd0
│ Summary: ATA Drive
│ Current version: R0123A0
│ Vendor: Transcend (ATA:0x8564)
│ GUIDs: 6771f965-9e0a-5a09-8271-ef0f66ac2f37
│ bbff7a8b-2ac7-5dd8-a13f-d0be97e02695
│ 3a74d7ba-b063-5a4f-b9e4-35229efc7b5b
│ Device Flags: • Internal device
│ • Updatable
│ • System requires external power source
│ • Needs a reboot after installation
│ • Device is usable for the duration of the update
│
├─UEFI Device Firmware:
│ Device ID: 272f84ea6e0e8c9a566ee486fa5299feb1a3a3b6
│ Current version: 2953577449
│ Minimum Version: 1
│ Vendor: DMI:LENOVO
│ GUIDs: c5ef09d4-1f20-41fc-a197-ed88ba3c9bd7
│ 5546bb0d-20e1-5e53-9c0b-8b6da1f3981c
│ Device Flags: • Internal device
│ • Updatable
│ • System requires external power source
│ • Needs a reboot after installation
│ • Device is usable for the duration of the update
│
└─UEFI Device Firmware:
Device ID: 1e27bf0e569658d727f2d126752b270ed048ea45
Current version: 65544
Minimum Version: 1
Vendor: DMI:LENOVO
GUIDs: dad450ea-85da-4121-ae37-ce857cfa2b8e
dda61f4f-5fb5-522a-8020-fb78ba4a7976
Device Flags: • Internal device
• Updatable
• System requires external power source
• Needs a reboot after installation
• Device is usable for the duration of the update
In diesem Beispiel sehen wir, dass ich vier Geräte habe, die von fwupd unterstützt werden. Sie können auch Geräte überprüfen, die vom LVFS unterstützt werden, sowie alle Updates, die der Öffentlichkeit zur Verfügung gestellt wurden.
Herunterladen der neuesten Metadaten von LVFS
Die refresh
Option lädt die neuesten Metadaten herunter. Um die neuesten Metadaten von LVFS herunterzuladen, geben wir den folgenden Befehl ein:
$ fwupdmgr refresh
Ausgabe:
Firmware metadata last refresh: 1 hour ago. Use --force to refresh again.
Wir können sehen, dass wir die letzten Metadaten auf unserem System haben.
Suche nach verfügbaren Firmware-Updates
Um die verfügbaren Updates für beliebige Geräte im System anzuzeigen, verwenden Sie get-updates
Option.
$ fwupdmgr get-updates
In meinem Fall werde ich benachrichtigt, dass für meine Geräte keine Updates verfügbar sind:
Devices with no available firmware updates:
• TS240GSSD220S
• UEFI Device Firmware
• UEFI Device Firmware
Devices with the latest available firmware version:
• System Firmware
No updates available for remaining devices
Auf einem anderen Linux-System scheint es jedoch verfügbare Firmware-Updates zu geben:
Devices with no available firmware updates:
• SC300B HFS256G39MND-3510B
• System Firmware
• UEFI dbx
20F90044GE
│
└─Intel Management Engine:
│ Device ID: 25127f5d4d5dfd6e903cda1a61a67cb092e4bb0f
│ Current version: 184.79.3722
│ Minimum Version: 184.79.3722
│ Vendor: DMI:LENOVO
│ GUIDs: 63451986-0c42-42db-9a18-342a8455ac68
│ 0e559cf4-f432-5cd4-9611-bd774afb417a
│ Device Flags: • Internal device
│ • Updatable
│ • System requires external power source
│ • Supported on remote server
│ • Needs a reboot after installation
│ • Device is usable for the duration of the update
│
├─ThinkPad T460s Corporate ME Update:
│ New version: 184.83.3874
│ Remote ID: lvfs
│ Summary: Lenovo ThinkPad T460s Corporate ME Firmware
│ License: Proprietary
│ Size: 7.5 MB
│ Created: 2016-07-08
│ Urgency: High
│ Details: https://pcsupport.lenovo.com/de/en/search?query=N1CRG67W
│ Vendor: Lenovo Ltd.
│ Flags: is-upgrade
│ Description:
│ • 8 Intel Platform Update 2020.2 HF2 Release
│
│ Version 11.8.83.3874 (LVFS: 184.83.3874)
│
│ Problem Fixes
│
│ • Mitigated several security vulnerabilities. Please see details under "Fixed Issues".
│
└─ThinkPad T460s Corporate ME Update:
New version: 184.80.3746
Remote ID: lvfs
Summary: Lenovo ThinkPad T460s Corporate ME Firmware
License: Proprietary
Size: 7.5 MB
Created: 2016-07-08
Urgency: High
Details: https://pcsupport.lenovo.com/de/en/search?query=N1CRG65W
Vendor: Lenovo Ltd.
Flags: is-upgrade
Description:
• 8 Intel Platform Update 2020.2 Release Version 11.8.80.3746 (LVFS: 184.80.3746) Problem Fixes • Mitigated the following security vulnerabilities under issues:
Aktualisieren Sie die Gerätefirmware
Um schließlich alle Updates für Ihr System herunterzuladen und anzuwenden, verwenden Sie den update
Option.
$ fwupdmgr update
- Aktualisierungen, die live angewendet werden können, werden sofort durchgeführt.
- Updates, die beim Booten ausgeführt werden, werden für den nächsten Neustart bereitgestellt.
Ausgabe:
Devices with no available firmware updates:
• SC300B HFS256G39MND-3510B
• System Firmware
• UEFI dbx
Upgrade available for Intel Management Engine from 184.79.3722 to 184.83.3874
20F90044GE must remain plugged into a power source for the duration of the update to avoid damage. Continue with update? [Y|n]: Y
Downloading… [* ] Less than one minute remaDownloading… [** ] Less than one minute remaDownloading… [** ] Less than one minute remaDownloading… [*** ] Less than one minute remaDownloading… [**** ] [****************************** ] Less than one minute remaDownloading… [******************************* ] Less than one minute remaDownloading… [***************************************]
Decompressing… [***************************************]
Authenticating… [***************************************]
Authenticating… [***************************************]
Updating Intel Management Engine…********************************]
Scheduling… [***************************************]
Successfully installed firmwareAn update requires a reboot to complete. Restart now? [y|N]:
Nach dem Systemneustart wird unsere Hardware-Firmware auf die neueste verfügbare Version aktualisiert.
Schlussfolgerung
In diesem Tutorial haben wir gelernt, wie man Firmware auf einem Ubuntu-System mit fwupd aktualisiert.
Sie können die Firmware-Aktualisierungen auch mit den gängigsten Software-Manager-Front-Ends wie GNOME Software, KDE Discover und Wyse Management Suite durchführen.
Außerdem fordert das fwupd-Projekt Benutzer dazu auf, sowohl erfolgreiche als auch fehlgeschlagene Updates an LVFS zu melden. Dies ist eine optionale Funktion, die jedoch empfohlen wird, da sie LVFS-Administratoren und OEM-Entwicklern wertvolles Feedback zur Wirksamkeit des Firmware-Aktualisierungsprozesses liefert. Sie können den Bericht senden mit:
$ fwupdmgr report-history
Danke fürs Lesen, bitte teilen Sie uns mit, wie gut das Firmware-Update auf Ihrem Linux-System verlaufen ist.