Debian
為什麼 fwupd 不安裝任何韌體更新,即使它顯示許多可用更新?
TLDR:我安裝
fwupd
,檢查更新,告訴它安裝更新,然後重新啟動。之後,檢查更新只會再次顯示所有相同的更新,就好像它們沒有安裝一樣。我在 Lenovo Thinkpad X1 Carbon 4th gen 上執行 Debian 10 Buster x64。可能無關緊要,但型號是 20FBCTO1WW。我正在嘗試使用
fwupd
來安裝韌體更新。我安裝它並啟動服務:sudo apt-get install fwupd sudo service fwupd start
列出所有有更新的設備:
root@london:~# fwupdmgr get-devices 20FBCTO1WW System Firmware DeviceId: c66f3753f0a35b3874d65546d4b7b10896d44ce2 Guid: 81cba30b-c2d4-4e66-bcf3-69d81ba890b0 Plugin: uefi Flags: internal|updatable|require-ac|supported|registered|needs-reboot Version: 0.1.8 VersionLowest: 0.1.8 Icon: computer Created: 2020-01-25 UEFI Device Firmware DeviceId: 6f92d954409bb3c145828fbbc0346c3ca12f2a9a Guid: cb3c1682-5386-4591-bd29-7c1f441b7ccb Plugin: uefi Flags: internal|updatable|require-ac|supported|registered|needs-reboot Version: 176.0.1202 VersionLowest: 176.0.1202 Icon: audio-card Created: 2020-01-25 SAMSUNG MZVKV512HAJH-000L1 DeviceId: 310f45f1f223064b5c16bf6dff31146755a64480 Guid: cce2386f-6d68-5f85-9f3f-ebead9288696 <- NVME\VEN_144D&DEV_A802&REV_01 Guid: 77bb4022-9503-586c-99b7-c8a64502da30 <- NVME\VEN_144D&DEV_A802 Guid: 8fd4ca73-d0ae-52e8-8977-461435c6f4cf <- NVME\VEN_144D Guid: e339432d-beab-53b2-9a9f-e0787a1ecb8b <- SAMSUNG MZVKV512HAJH-000L1 Serial: bla Summary: NVM Express Solid State Drive Plugin: nvme Flags: internal|updatable|require-ac|registered|needs-reboot Vendor: Samsung Electronics Co Ltd VendorId: NVME:0x144D Version: 6L0QBXX7 Icon: drive-harddisk Created: 2020-01-25
列出所有更新也顯示了很多(我省略了以節省空間):
root@london:~# fwupdmgr refresh Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz Downloading… [***************************************] Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc root@london:~# fwupdmgr get-updates 20FBCTO1WW System Firmware has firmware updates: GUID: 81cba30b-c2d4-4e66-bcf3-69d81ba890b0 ID: com.lenovo.ThinkPadN1FET.firmware Update Version: 0.1.42 Update Name: ThinkPad X1 Carbon 4th / X1 Yoga 1st System Update Update Summary: Lenovo ThinkPad X1 Carbon 4th / X1 Yoga 1st System Firmware Update Remote ID: lvfs Update Checksum: SHA1(efb007a2bda94c96d60c349a6f24cc80d51d7322) Update Location: https://fwupd.org/downloads/a06bbb48aa46c90497459ac6e98157f2acfe1778-Lenovo-ThinkPad-X1Carbon4th-X1Yoga1st-SystemFirmware-1.42.cab Update Description: Lenovo ThinkPad X1 Carbon 4th / X1 Yoga 1st System Firmware Version 1.42
我執行更新:
root@london:~# fwupdmgr update -v Downloading 0.1.42 for 20FBCTO1WW System Firmware... (fwupdmgr:2813): FuCommon-DEBUG: 09:11:45.120: creating path /root/.cache/fwupd (fwupdmgr:2813): FuMain-DEBUG: 09:11:45.132: skpping download as file already exists (fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.134: Emitting ::status-changed() [decompressing] Decompressing… [- ](fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [idle] Decompressing… [***************************************] (fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [waiting-for-auth] Authenticating… [ - ](fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [idle] Authenticating… [***************************************] Could not check for auth: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.PolicyKit1 was not provided by any .service files
我不明白關於等待授權的錯誤,因為我以 root 身份執行它。重新啟動後,
fwupdmgr
仍然顯示“沒有更新歷史記錄”。即使我直接安裝 .cab 韌體文件,它似乎仍然沒有更新:fwupdmgr install --allow-reinstall /root/.cache/fwupd/a06bbb48aa46c90497459ac6e98157f2acfe1778-Lenovo-ThinkPad-X1Carbon4th-X1Yoga1st-SystemFirmware-1.42.cab
我究竟做錯了什麼?
相關錯誤是最後一行:
Could not check for auth: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.PolicyKit1 was not provided by any .service files
安裝提供
org.freedesktop.PolicyKit1
文件的包:sudo apt-get install policykit-1
假設所有其他
fwupd
配置正確,它應該執行更新。