fwupd, doskonałe narzędzie do zarządzania aktualizacjami oprogramowania sprzętowego w systemie Linux

Logo Fwupd.

Zostało to niedawno ogłoszone wydanie narzędzia fwupd 2.0 otwarte źródło służy do zarządzania i aktualizacji oprogramowania sprzętowego różnych urządzeń w systemie Linux. Jego celem jest ułatwienie instalacji i aktualizacji oprogramowania sprzętowego na sprzęcie bez konieczności uzyskiwania dostępu do narzędzi specyficznych dla producenta lub ponownego uruchamiania systemu w innym systemie operacyjnym.

fwupd korzysta z usługi aktualizacji oprogramowania sprzętowego LVFS (Usługa oprogramowania sprzętowego dostawcy systemu Linux), w ramach której producenci przesyłają aktualizacje oprogramowania sprzętowego. Obecnie katalog LVFS zawiera oprogramowanie sprzętowe dla ponad 1,600 urządzeń od 160 producentów.

Zastosowanie Ten scentralizowany katalog eliminuje potrzebę generowania przez producentów określonych pakietów dla każdej dystrybucji, umożliwiając im przesyłanie oprogramowania sprzętowego w pliku „.cab” zawierającym dodatkowe metadane, podobnie jak w przypadku publikowania oprogramowania sprzętowego dla systemu Windows.

L Użytkownicy mogą pobrać i zainstalować te aktualizacje bezpośrednio z ich dystrybucji Linux, ułatwiający dużą liczbę procesów, ponieważ obsługuje zarówno tryb automatycznej aktualizacji oprogramowania, jak i opcję wykonania operacji po potwierdzeniu.

Wśród głównych cech które wyróżniają się z fwupd, możemy znaleźć następujące:

  • Obsługa szerokiej gamy urządzeń (UEFI, USB, Thunderbolt, wyświetlacze itp.).
  • Instalacja i aktualizacja oprogramowania sprzętowego bez ponownego uruchamiania i opuszczania środowiska pracy.
  • Integracja z menedżerem pakietów i aktualizacjami systemu.
  • Kompatybilny z wieloma dystrybucjami Linuksa
  • Jest to wygodne i bezpieczne rozwiązanie umożliwiające aktualizację oprogramowania sprzętowego
  • Jest kompatybilny z oprogramowaniem GNOME i menedżerami aplikacji KDE Discover.
  • Nie ogranicza się tylko do systemów stacjonarnych, ale nadaje się również do aktualizacji oprogramowania sprzętowego na urządzeniach takich jak smartfony, tablety, serwery i urządzenia Internetu rzeczy.

Co nowego w fwupd 2.0?

W tej nowej wersji fwupd 2.0, przeniesiono proces w tle z używania haka GObject z GUsb na bezpośredni dostęp do libusb i sysfs. Ta zmiana umożliwiła przeniesienie emulacji urządzenia do biblioteki libfwupdplugin i zaimplementowanie emulacji aktualizacji oprogramowania sprzętowego na fikcyjnych urządzeniach hidraw i nvme, podobnie jak emulacja wykonywana z fikcyjnymi urządzeniami USB. Dzięki tej funkcji mogliśmy przeprowadzić dodatkowe testy identyfikujące problemy z aktualizacjami, które mogą pojawić się po wprowadzeniu określonych zmian w fwupd.

również, biblioteka GUdev, który zapewnia powiązania GObject przez libudev, został usunięty z lokalu. Zamiast tego proces fwupd tworzy teraz gniazdo netlink do analizy zdarzeń udev przesyłanych przez niego. Ta zmiana spowodowało znaczne zmniejszenie zużycia pamięci i obciążenia procesora zarówno podczas uruchamiania, jak i podczas działania, a także uproszczenie włączenia obsługi ueventd, co w przyszłości umożliwi kompatybilność fwupd z platformą Android.

Wprowadzono optymalizacje mające na celu zmniejszenie zużycia pamięci podczas przesyłania oprogramowania układowego z plików na urządzenia; Zamiast kopiowania oprogramowania sprzętowego do pamięci, używany jest teraz transfer za pomocą deskryptora pliku. Również Dodano obsługę wielu nowych urządzeń.

Ponadto, Zakończono obsługę starszych formatów metadanych i weryfikacji oprogramowania sprzętowego, i wcześniej przestarzałe narzędzia wiersza poleceń zostały usunięte. Również dodano API do ładowania raportów w oprogramowaniu gnome a system kompilacji obejmuje teraz obsługę platformy Darwin.

Na koniec dodaliśmy możliwość wyświetlenia listy plików ESP w formacie JSON (za pomocą komendy fwupdtool esp-list –json) oraz dodaliśmy opcję określenia w konfiguracji emulowanych urządzeń.

Wreszcie, jeśli chcesz dowiedzieć się więcej na ten temat, możesz zapoznać się ze szczegółami w następujący link.

Jak zainstalować fwupd na Linuksie?

Osoby zainteresowane możliwością zainstalowania fwupd powinny wiedzieć, że w większości dystrybucji jest ono już preinstalowane. Jeśli jednak nie masz go zainstalowanego, możesz to zrobić za pomocą następującego polecenia, w zależności od dystrybucji:

Ubuntu i pochodne:

sudo apt install fwupd

Fedora:

sudo dnf install fwupd

Arch Linux i na nim oparty:

sudo pacman -S fwupd

Jak korzystać z fwupd?

Sposób użycia fwupd jest dość prosty i opiera się na wykonywaniu poleceń i właściwym sposobem na to jest ciągłe aktualizowanie bazy danych dostępnego oprogramowania, przed przystąpieniem do aktualizacji oprogramowania urządzenia. Możemy to zrobić wpisując:

sudo fwupdmgr refresh

do zobacz, które urządzenia obsługują fwupd, a także ich bieżący status i jeśli mają dostępne aktualizacje, mogą to zrobić za pomocą następującego polecenia:

fwupdmgr get-devices

Po umieszczeniu na liście urządzeń będą one mogły to zrobić sprawdź dostępność aktualizacji oprogramowania sprzętowego dostępne po uruchomieniu:

fwupdmgr get-updates

Jeśli dostępne są aktualizacje oprogramowania sprzętowego, możesz je zastosować, biegając:

sudo fwupdmgr update

do wyświetlić listę zainstalowanych aktualizacji oprogramowania sprzętowego poprzez fwupd, możesz to zrobić za pomocą następującego polecenia:

fwupdmgr history