fwupd service замедляет время загрузки моего твердотельного накопителя PCIe. Почему это происходит, и как я могу это исправить?

В настоящее время моя система ведет себя странно при загрузке. Вход в систему GUI появляется через несколько секунд после нажатия кнопки питания, но моя клавиатура и мышь остаются обесточенными около минуты. systemd-analyzeуказывает, что fwupd.serviceявляется проблемой:

$ systemd-analyze time
Startup finished in 12.573s (firmware) + 293ms (loader) + 3.710s (kernel) + 1min 2.907s (userspace) = 1min 19.485s 
graphical.target reached after 5.434s in userspace
$ systemd-analyze blame
1min 705ms fwupd.service                       
    4.083s plymouth-quit-wait.service          
    1.028s gpu-manager.service                 
     925ms systemd-logind.service              
     708ms systemd-resolved.service            
     507ms accounts-daemon.service             
     490ms networkd-dispatcher.service         
     488ms system76-power.service              
     470ms fancontrol.service                  
     437ms ModemManager.service                
     301ms systemd-journald.service
...

journalctl -uуказывает, что fwupdзависает на каком-то устройстве:

Jun 25 21:25:49 pop_os systemd[1]: Starting Firmware update daemon...
Jun 25 21:25:50 pop_os fwupd[1501]: 01:25:50:0156 FuPluginUefi         failed to add /sys/firmware/efi/esrt/entries/entry0: ESRT GUID '00000000-0000-0000-0000-000000000000' was not valid
Jun 25 21:26:50 pop_os systemd[1]: Started Firmware update daemon.

​​Я попытался поместить указанный GUID 00000000-0000-0000-0000-000000000000в переменную BlacklistDevicesв /etc/fwupd/daemon.conf, но это не повлияло на время загрузки.Я также заглянул в каталог /sys/firmware/efi/esrt/entries/entry0, и файл fw_classв этом каталоге содержал указанный выше GUID.

Вот вывод fwupdmgr get-devices:

$ fwupdmgr get-devices 
To Be Filled By O.E.M.
│
├─PCIe SSD:
│     Device ID:           71b677ca0f1bc2c5b804fa1d59e52064ce589293
│     Summary:             NVM Express Solid State Drive
│     Current version:     ECFM12.3
│     Vendor:              Phison Electronics Corporation (NVME:0x1987)
│     GUIDs:               8cb1e2fe-eb01-5508-9fb3-98add4bb7c34
│                          a44eb54c-5441-56f2-8cc0-5e48964c6457
│                          8d128eab-f266-513f-81e7-910de65fd73a
│     Device Flags:        • Internal device
│                          • Updatable
│                          • Requires AC power
│                          • Supported on remote server
│                          • Needs shutdown after installation
│                          • Device is usable for the duration of the update
│   
└─PS Audio USB Audio 2.0:
      Device ID:           aff287d984fc4f1ed8f1ab3b35e4650b1b1f6c22
      Current version:     6.152
      Vendor:              PS Audio (USB:0x2616)
      GUIDs:               0f7b0016-25d6-5bc5-a6e0-423dba203c62
                           1fd717ad-32ef-5d86-a59a-71fd73ed6aae
      Device Flags:        • Updatable

Насколько я понимаю, fwupd.serviceзависает на этой записи GUID ESRT на целую минуту до сдаваться и двигаться дальше. Мой вопрос: что это за запись, и как я могу остановить ее от замедления загрузки?

Редактировать: Оказывается, это был вовсе не fwupd, а скорее беспроводной адаптер Xbox One, который все замедлял. Загрузка без подключенного адаптера полностью решает проблему.

3
27.06.2020, 18:56
1 ответ

Краткий ответ :Заявлено, что прошивка UEFI вашей системы поддерживает механизм «капсулы обновления прошивки UEFI», который позволяет всем операционным системам предоставлять обновления прошивки системы унифицированным способом (, также известным как «обновления BIOS» ). Но ваша текущая версия прошивки, по-видимому, предоставляет нулевой GUID в информационной таблице ESRT вместо того, чтобы правильно идентифицировать обновляемую системную прошивку, поэтому попытка проверить, доступны ли более новые версии прошивки на Прошивка поставщика Linux Служба не работает.

Имя подключаемого модуля fwupd, отвечающего за считывание информационной таблицы ESRT из встроенного ПО системы и запрос о доступности этого типа обновления встроенного ПО, — uefi, поэтому вы можете попробовать отредактировать строку BlacklistPluginsв своем от /etc/fwupd/daemon.confдо:

BlacklistPlugins=test;uefi

(при условии, что ваш конфигурационный файл уже включает черный список по умолчанию для плагина test, как в моем Debian 10)

fwupd.serviceявляется совершенно необязательным, поэтому не должно возникнуть проблем с его полным отключением (с помощью systemctl mask fwupd.service, чтобы предотвратить его автоматический -запуск, даже если другие службы запрашивают его ), если вы предпочитаете это. решение. Но тогда вам нужно будет самостоятельно найти любые обновления прошивки, применимые к вашей системе, старым -способом.:-)

Если повезет, поставщик системы может исправить эту проблему в обновленной версии встроенного ПО UEFI, поэтому обновление встроенного ПО UEFI до последней доступной версии может решить проблему.

2
18.03.2021, 23:24

Теги

Похожие вопросы