Hub*_*bro 31 linux debian kernel-module systemd usb-hid
一段时间以来,我看到一些红色文本在启动过程中闪烁。今天我决定研究一下。systemctl 服务systemd-modules-load.service
失败并显示以下文本:
tomas@bonus-debian:~$ sudo systemctl status systemd-modules-load ? systemd-modules-load.service - 加载内核模块 已加载:已加载(/lib/systemd/system/systemd-modules-load.service;静态;供应商预设:已启用) 活动:失败(结果:退出代码),因为 ma。2015-11-09 02:58:48 CET;5 分钟前 文档:man:systemd-modules-load.service(8) 人:模块-load.d(5) 进程:644 ExecStart=/lib/systemd/systemd-modules-load(代码=退出,状态=1/FAILURE) 主PID:644(代码=退出,状态=1/FAILURE) 十一月 09 02:58:48 奖励-debian systemd[1]:启动加载内核模块... 十一月 09 02:58:48bonus-debian systemd-modules-load[644]:找不到模块“-r usbhid” 十一月 09 02:58:48 奖励-debian systemd[1]:systemd-modules-load.service:主进程退出,代码=退出,状态=1/FAILURE 十一月 09 02:58:48 bonus-debian systemd[1]:无法启动加载内核模块。 十一月 09 02:58:48 bonus-debian systemd[1]:systemd-modules-load.service:单元进入失败状态。 十一月 09 02:58:48 bonus-debian systemd[1]:systemd-modules-load.service:失败,结果为“退出代码”。
我以为我会从谷歌搜索这个问题开始:
哎哟。
我的系统似乎并不介意驱动程序加载失败,因为我没有注意到体验下降,但我仍然想修复它。
由于谷歌让我无处可去,我已经被困住了。我不知道从哪里开始寻找。
如何找出 systemctl 服务“systemd-modules-load”失败的原因?
Rah*_*sia 52
我也有这个问题。我能够按照 Arch Linux systemd wiki 页面上的说明解决它。这是我所做的总结:
让我们找到无法启动的 systemd 服务
$ systemctl --failed
------------------------------------------------------------------------
systemd-modules-load.service loaded failed failed Load Kernel Modules
Run Code Online (Sandbox Code Playgroud)好的,我们发现 systemd-modules-load 服务有问题。我们想知道更多。
$ systemctl status systemd-modules-load
------------------------------------------------------------------------
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: failed (Result: exit-code) since So 2013-08-25 11:48:13 CEST; 32s ago
Docs: man:systemd-modules-load.service(8).
man:modules-load.d(5)
Process: 15630 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
Run Code Online (Sandbox Code Playgroud)
如果未列出进程 ID,只需使用以下命令重新启动失败的服务
$ systemctl restart systemd-modules-load
Run Code Online (Sandbox Code Playgroud)现在我们有了进程 id (PID) 来深入调查这个错误。使用当前进程 ID(此处:15630)输入以下命令:
$ journalctl _PID=15630
----------------------------------------------------------------------
-- Logs begin at Sa 2013-05-25 10:31:12 CEST, end at So 2013-08-25 11:51:17 CEST. --
Aug 25 11:48:13 mypc systemd-modules-load[15630]: Failed to find module 'blacklist usblp'
Aug 25 11:48:13 mypc systemd-modules-load[15630]: Failed to find module 'install usblp /bin/false'
Run Code Online (Sandbox Code Playgroud)我们看到一些内核模块配置有错误的设置。因此,我们在 /etc/modules-load.d/ 中查看这些设置
$ ls -Al /etc/modules-load.d/
----------------------------------------------------------------------
...
-rw-r--r-- 1 root root 79 1. Dez 2012 blacklist.conf
-rw-r--r-- 1 root root 1 2. Mär 14:30 encrypt.conf
-rw-r--r-- 1 root root 3 5. Dez 2012 printing.conf
-rw-r--r-- 1 root root 6 14. Jul 11:01 realtek.conf
-rw-r--r-- 1 root root 65 2. Jun 23:01 virtualbox.conf
...
Run Code Online (Sandbox Code Playgroud)Failed to find module 'blacklist usblp' 错误消息可能与 blacklist.conf 中的错误设置有关。让我们在我们通过第 3 步找到的每个选项之前插入一个尾随 # 来停用它:
/etc/modules-load.d/blacklist.conf
----------------------------------------------------------------------
# blacklist usblp
# install usblp /bin/false
Run Code Online (Sandbox Code Playgroud)现在,尝试启动 systemd-modules-load:
$ systemctl restart systemd-modules-load
Run Code Online (Sandbox Code Playgroud)
如果成功,这应该不会提示任何内容。如果您看到任何错误,请返回到第 3 步并使用新的 PID 来解决剩余的错误。
如果一切正常,您可以使用以下命令验证服务是否已成功启动:
$ systemctl status systemd-modules-load
----------------------------------------------------------------------
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: active (exited) since So 2013-08-25 12:22:31 CEST; 34s ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 19005 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=0/SUCCESS)
Aug 25 12:22:31 mypc systemd[1]: Started Load Kernel Modules.
Run Code Online (Sandbox Code Playgroud) 归档时间: |
|
查看次数: |
65310 次 |
最近记录: |