avatar

Failed to start Load Kernel Modules

Опубликовал в раздел LINUX
0

Заметил ошибку при загрузке системы, и хотя на работу она не влияет решил выяснить, что за модули не может загрузить.

Окей, пробуем перезапустить:
$ sudo systemctl restart systemd-modules-load
Job for systemd-modules-load.service failed because the control process exited with error code.
See "systemctl status systemd-modules-load.service" and "journalctl -xe" for details.

Для детальной информации предлагают ввести journalctl -xe, смотрим:
$ journalctl -xe
мая 13 23:36:05 dell systemd[1]: Starting Load Kernel Modules...
-- Subject: Начинается запуск юнита systemd-modules-load.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Начат процесс запуска юнита systemd-modules-load.service.
мая 13 23:36:06 dell systemd-modules-load[24959]: Failed to find module 'vfs_monitor'
мая 13 23:36:06 dell systemd[1]: systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE
мая 13 23:36:06 dell systemd[1]: systemd-modules-load.service: Failed with result 'exit-code'.
мая 13 23:36:06 dell systemd[1]: Failed to start Load Kernel Modules.
-- Subject: Ошибка юнита systemd-modules-load.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Произошел сбой юнита systemd-modules-load.service.
-- 
-- Результат: RESULT.
мая 13 23:36:06 dell sudo[24956]: pam_unix(sudo:session): session closed for user root

Видим строчку Failed to find module 'vfs_monitor', а вот ты и попался.

Теперь смотрим откуда юнит грузит модули:
$ cat /usr/lib/systemd/system/systemd-modules-load.service
#  SPDX-License-Identifier: LGPL-2.1+
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

[Unit]
Description=Load Kernel Modules
Documentation=man:systemd-modules-load.service(8) man:modules-load.d(5)
DefaultDependencies=no
Conflicts=shutdown.target
Before=sysinit.target shutdown.target
ConditionCapability=CAP_SYS_MODULE
ConditionDirectoryNotEmpty=|/lib/modules-load.d
ConditionDirectoryNotEmpty=|/usr/lib/modules-load.d
ConditionDirectoryNotEmpty=|/usr/local/lib/modules-load.d
ConditionDirectoryNotEmpty=|/etc/modules-load.d
ConditionDirectoryNotEmpty=|/run/modules-load.d
ConditionKernelCommandLine=|modules-load
ConditionKernelCommandLine=|rd.modules-load

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-modules-load
TimeoutSec=90s

Нас интересуют строчки «ConditionDirectoryNotEmpty», переходим и видим, что конфиги с указанными модулями располагаются в /usr/lib/modules-load.d/.

Смотрим наличие vfs_monitor в файлах:
$ grep -i vfs_monitor *
anything.conf: vfs_monitor

Открываем anything.conf и коментируем горе модуль.

Как выяснилось, файл anything.conf принадлежит пакету deepin-anything связанного с поиском файлов.

После перезагрузки ошибка исчезла 8-)

P.S Вообщем, достаточно поставить пакет

$ sudo pacman -S linux-headers

и не каких плясок не нужно :)