首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fwupd服务正在减缓我的PCIe SSD上的启动时间。它为什么要这么做,我怎么才能修好它?

fwupd服务正在减缓我的PCIe SSD上的启动时间。它为什么要这么做,我怎么才能修好它?
EN

Unix & Linux用户
提问于 2020-06-26 02:38:26
回答 1查看 3.3K关注 0票数 5

我的系统目前在引导时显示了一些奇怪的行为。GUI登录在点击电源按钮后几秒钟就会出现,但我的键盘和鼠标在大约一分钟内仍然没有电源。systemd-analyze表示fwupd.service是问题所在:

代码语言:javascript
复制
$ 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
代码语言:javascript
复制
$ 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正被挂在某个设备上:

代码语言:javascript
复制
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.

我尝试将00000000-0000-0000-0000-000000000000的指定GUID放在/etc/fwupd/daemon.conf中的BlacklistDevices变量中,但这对启动时间没有影响。我还查看了/sys/firmware/efi/esrt/entries/entry0目录,该目录中的文件fw_class包含上述GUID。

下面是fwupdmgr get-devices的输出:

代码语言:javascript
复制
$ 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在放弃并继续前进之前,在这个ESRT条目上被挂了整整一分钟。我的问题是:这个入口是什么鬼东西,我如何才能阻止它放慢我的启动速度?

编辑:原来它根本不是fwupd,而是Xbox One无线适配器,它减慢了所有的速度。在没有插入适配器的情况下引导完全解决了问题。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-06-26 05:39:38

简单回答:您的系统的UEFI固件声称支持"UEFI固件更新胶囊“机制,该机制允许所有操作系统统一提供系统固件更新(也称为"BIOS更新”)。但是,您当前的固件版本显然在ESRT信息表中提供了一个空GUID,而不是正确地标识可更新的系统固件,因此试图检查Linux供应商固件服务上是否有较新的固件版本是失败的。

负责从系统固件读取ESRT信息表并查询该类型固件更新的可用性的fwupd插件名为uefi,因此您可以尝试编辑/etc/fwupd/daemon.conf中的BlacklistPlugins行以:

代码语言:javascript
复制
BlacklistPlugins=test;uefi

(假设您的配置文件已经包含了test插件的默认黑名单,就像我的Debian 10所做的那样)

fwupd.service完全是可选的,所以完全禁用它没有问题(使用systemctl mask fwupd.service防止它自动启动,即使其他服务请求它),如果您喜欢该解决方案的话。但是,您将需要找到适用于您自己的系统的任何固件更新,以老式的方式。:-)

幸运的是,系统供应商可能已经在更新的UEFI固件版本中修复了它,因此将您的UEFI固件更新到最新的可用版本可能只会解决问题。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/595146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档