fwupd (Polski)

Powiązane artykuły
Bezpieczny rozruch
UEFI
fwupd
to prosty demon pozwalający oprogramowaniu sesyjnemu na zaktualizowanie oprogramowania układowego na twojej lokalnej maszynie. Został on zaprojektowany dla komputerów stacjonarnych,   można go również używać na telefonach oraz serwerach bez ekranów.
Lista wspieranych urządzeń znajduje się
tutaj
, ponadto
ma pojawić się ich więcej
.
Instalacja
Zainstaluj
pakiet
fwupd
.
Zobacz
#Konfiguracja dla aktualizacji UEFI
jeżeli planujesz takie użycie.
Interfejsy graficzne
Niektóre
środowiska pulpitowe
zawierają interfejsy graficzne z wbudowanym wsparciem dla
fwupd
:
GNOME Software
— Będzie okresowo sprawdzać dostępność aktualizacji i automatycznie pobierać oprogramowanie sprzętowe w tle w
GNOME
. Po pobraniu oprogramowania układowego w GNOME Software zostanie wyświetlone wyskakujące okienko, aby wykonać aktualizację.
https://wiki.gnome.org/Apps/Software
||
gnome-software
KDE Discover
— Centrum oprogramowania używane z
Plasma
. Wraz z wydaniem KDE Plasma 5.14, nowy backend
fwupd
został zaimplementowany w KDE Discover dla aktualizacji firmware. Te aktualizacje oprogramowania sprzętowego są wyświetlane wraz z innymi aktualizacjami systemu.
https://userbase.kde.org/Discover
||
discover
GNOME Firmware
— Aplikacja do aktualizacji, obniżania wersji i ponownej instalacji oprogramowania sprzętowego na urządzeniach obsługiwanych przez
fwupd
. Może odblokować zablokowane urządzenia
fwupd
, zweryfikować oprogramowanie układowe na obsługiwanych urządzeniach i wyświetlić wszystkie wersje dla urządzenia
fwupd
.
https://gitlab.gnome.org/World/gnome-firmware
||
gnome-firmware
Użycie
This article or section needs expansion.
Reason:
Należy wyjaśnić znaczenie i sposób użycia pozostałych plików wykonywalnych oraz jednostek systemd z pakietu. (Discuss in
Talk:Fwupd (Polski)
)
Ten pakiet dostarcza jednostkę
fwupd.service
, która będzie automatycznie uruchamiała demona
fwupd
, gdy otrzyma ona pierwsze zapytanie.
[1]
Aby wyświetlić wszystkie urządzenia wykryte przez
fwupd
:
$ fwupdmgr get-devices
Note
Wyświetlone urządzenia niekoniecznie mogą być zaktualizowane przez
fwupd
('np.' Zintegrowana karta graficzna Intel). Można skorzystać z alternatywnych rozwiązań producenta.
Aby pobrać najnowsze metadata z
LVFS
:
$ fwupdmgr refresh
Aby pokazać aktualizacje dostępne dla urządzeń w systemie:
$ fwupdmgr get-updates
Aby zainstalować aktualizacje:
$ fwupdmgr update
Note
Aktualizacje, które mogą zostać zaaplikowane na żywo, zostaną wykonane natychmiastowo.
Aktualizacje, które muszą zostać wykonane przy starcie, zostaną zaplanowane na następne uruchomienie systemu.
Użytkownik root
może być wymagany do wykonania poszczególnych aktualizacji.
Konfiguracja dla aktualizacji UEFI
Warning
Aktualizacja oprogramowania UEFI może unieważnić aktualną instalację
programu rozruchowego
. Ponowne utworzenie wpisu NVRAM (na przykład używając
efibootmgr
) może być konieczne po pomyślnej aktualizacji.
Następujące wymagania powinny być spełnione:
Upewnij się, że system został uruchomiony w trybie
UEFI
, ponieważ aktualizacja nie jest możliwa w starszym trybie bootowania.
Zweryfikuj czy
dostęp do zmiennych EFI jest możliwy
.
Zamontuj
partycję systemową EFI
(ESP).
esp
jest używane do określenia punktu montowania w tej sekcji.
Upewnij się, że opcjonalna zależność
udisks2
jest zainstalowana oraz że powiązana z nią jednostka systemd zostanie uruchomiona przed jednostką fwupd; dostarczy ona wsparcie dla aktualizacji oprogramowania UEFI.
Przygotuj ESP
fwupd
skopiuje wszystkie potrzebne pliki do
esp
, ale żeby to zadziałało, potrzeba stworzyć prosty układ folderów na twoim
esp
; oznacza to stworzenie folderu
EFI
na twoim
esp
:
Note
Ze względu na twój program rozruchowy albo obecność innych systemów operacyjnych ten folder może już istnieć.
# mkdir
esp
/EFI/
Warning
Nazwa folderu
EFI
musi
być napisana wyłącznie dużymi literami. W razie użycia małych liter
fwupd
może wykryć punkt
esp
jako
esp
/efi/
i zamiast tego szukać
esp
/efi/EFI/
.
Zrestartuj
jednostkę
fwupd.service
. Możesz teraz wykonać polecenia
fwupdmgr refresh
i
fwupdmgr update
. System poprosi Cię o ponowne uruchomienie (do aktualizatora oprogramowania).
Note
W niektórych urządzeniach (przykładowo
Lenovo ThinkPad P50
) aktualizator wyświetla
czarny ekran bez żadnych wiadomości
—nie panikuj, i
nie
przerywaj ani nie restartuj urządzenia. Po kilku sekundach, bądź minutach, zważając na aktualizację maszyna uruchomi się z powrotem do systemu operacyjnego.
Bezpieczny rozruch
Currently,
fwupd
relies on
shim
to chainload the
fwupd
EFI binary on systems with
Secure Boot
enabled; for this to work,
shim
has to be installed correctly.
Aktualnie
fwupd
polega na
shim
aby załadować plik binarny EFI
fwupd
na systemach z włączonym
Secure Boot
. Aby to zadziałało,
shim
musi zostać poprawnie zainstalowany.
Używanie własnych kluczy
Alternatywnie można ręcznie podpisać plik wykonywalny UEFI używany do wykonywania aktualizacji, który znajduje się w
/usr/lib/fwupd/efi/fwupdx64.efi
. Podpisany plik wykonywalny UEFI jest oczekiwany w
/usr/lib/fwupd/efi/fwupdx64.efi.signed
. Używając
sbsigntools
, można to osiągnąć uruchamiając:
# sbsign --key
plik_z_kluczem
--cert
plik_z_certyfikatem
/usr/lib/fwupd/efi/fwupdx64.efi
To automatically sign this file when installed or upgraded, a
Pacman hook
can be used:
Aby automatycznie podpisywać ten plik kiedy jest on instalowany albo aktualizowany, można użyć
haków Pacmana
:
/etc/pacman.d/hooks/sign-fwupd-secureboot.hook
[Trigger]
Operation = Install
Operation = Upgrade
Type = Path
Target = usr/lib/fwupd/efi/fwupdx64.efi

[Action]
When = PostTransaction
Exec = /usr/bin/sbsign --key
plik_z_kluczem
--cert
plik_z_certyfikatem
/usr/lib/fwupd/efi/fwupdx64.efi
Depends = sbsigntools
Miej pewność, aby podmienić
plik_z_kluczem
oraz
plik_z_certyfikatem
na odpowiadające im ścieżki do twoich kluczy.
Zamiast haka pacman można również utworzyć dowiązanie symboliczne z
/usr/lib/fwupd/efi/fwupdx64.efi
do
/usr/lib/fwupd/efi/fwupdx64.efi.signed
i dodać plik do listy
EXTRA_SIGN
w
/etc/sbupdate.conf
.
Na koniec należy ustawić
DisableShimForSecureBoot
w
/etc/fwupd/fwupd.conf
i zrestartować
fwupd.service
:
/etc/fwupd/fwupd.conf
...

[uefi_capsule]
DisableShimForSecureBoot=true
Note
Jeżeli ta konfiguracja została wykonana przed wersją
fwupd
1.9, wtedy ta opcja jest dostępna w
/etc/fwupd/uefi_capsule.conf
.
Jeżeli ta konfiguracja została wykonana przed wersją
fwupd
1.4, należy być świadomym o subtelnej zmianie w nazwie opcji konfiguracyjnej.
Zobacz
https://github.com/fwupd/fwupd/issues/669
po więcej informacji.
Rozwiązywanie problemów
Utknięcie podczas ponownego uruchamiania
fwupdmgr update
nie zgłasza żadnego błędu, ale ponowne uruchomienie powoduje zablokowanie a przytrzymanie przycisku zasilania nic nie daje. Spróbuj wyłączyć zasilanie lub naciśnij przycisk resetowania (na laptopie może to być otwór z tyłu), aby wymusić ponowne uruchomienie.
Brak błędu, ale brak aktualizacji po ponownym uruchomieniu
Symptom:
fwupdmgr update
nie zgłasza błędu i wyświetla monit o ponowne uruchomienie (np. przy aktualizacji BIOS-u). Jednak system uruchamia się ponownie normalnie (lub zacina się), a aktualizacja oprogramowania sprzętowego NIE następuje.
Możliwa przyczyna:
W ustawieniach BIOS zmiana kolejności rozruchu musi być dozwolona.
Możliwe inne rozwiązanie, jeśli w toku jest wiele aktualizacji:
Spróbuj aktualizować pakiety pojedynczo. Aby wybrać pakiety, użyj poniższych poleceń:
$ fwupdmgr update
update_ID
(Gdzie
update_ID
to coś w stylu
f95c9218acd12697af946874bfe4239587209232
.)
Błąd systemu plików tylko do odczytu
Przynajmniej
fwupdmgr
1.5.2 dedukuje nieprawidłowy punkt montowania, jeśli
bind jest używany do montowania partycji systemowej EFI do /boot
. W rezultacie nie zapisuje pliku aktualizacji UEFI do
/boot/EFI/arch/fw
(
fwupdmgr
), podczas gdy powinien on zostać zapisany do
esp
/EFI/arch/fw
). Skutkuje to (mylącym) komunikatem o błędzie
file system is read-only
. W przypadku, gdy aktualizacja została wykonana przez
Discover
(lub dowolny inny interfejs GUI aktualizacji obsługujący fwupd), może nie zostać wyświetlony żaden błąd lub mogą zostać wyświetlone mylące błędy.
Aby obejść ten problem, należy najpierw uruchomić
umount /boot
, jeśli wcześniej był on zamontowany do
esp
/EFI/arch
, a następnie uruchomić
fwupdmgr update
, aby zapisać plik aktualizacji UEFI do
esp
/EFI/arch/fw
,
mount /boot
i ponownie uruchomić system, aby wykonać aktualizację UEFI.
Partycja UEFI ESP nie została wykryta lub skonfigurowana
Jeśli partycja ESP nadal nie zostanie wykryta po spełnieniu wszystkich wymagań
#Konfiguracja dla aktualizacji UEFI
, punkt montowania można określić ręcznie:
/etc/fwupd/uefi_capsule.conf
[uefi_capsule]
OverrideESPMountPoint=/efi   # Zmień odpowiednio dla twojego systemu
Zobacz również
powiązany artykuł
na wiki
fwupd
.
Nie można załadować wtyczki MSR
Wtyczka MSR umożliwia odpytywanie stanu DCI, interfejsu debugowania dostępnego dla procesorów Intel, który powinien być wyłączony na maszynach produkcyjnych zgodnie z
dokumentacją fwupd
.
Ta wtyczka wymaga załadowania modułu jądra
msr
.
msr
jest wbudowanym modułem jądra we wszystkich oficjalnych pakietach jądra Arch Linux, ale nieoficjalne pakiety jądra mogą mieć go jako ładowalny moduł jądra. W tym drugim przypadku musimy jawnie
załadować moduł podczas uruchamiania
.
Failed to load daemon: failed to load engine: No ESP with path
Podczas uruchamiania fwupd sprawdza lokalizację esp jako
EspLocation
z
/etc/fwupd/daemon.conf
. Zmodyfikuj go do odpowiedniej konfiguracji, jeśli napotkasz ten błąd.