无法启动加载内核模块后该怎么办


44

我试图从Ubuntu 14.04升级系统。我的笔记本电脑冻结了几个小时。甚至指针都没有做任何事情。因此,我通过按下电源按钮几秒钟来关闭电源。这个未完成的安装是我问题的根源。当我重新引导系统时,出现grub,然后显示以下消息:

[FAILED] Failed to start Load Kernel Modules
See 'systemctl status systemd-modules-load.service' for details

加上其他以final结尾的行:

Failed to start Load Kernel Modules

图片

通过按CTRL + ALT + F1打开命令行时,我可以输入

sudo systemctl status systemd-modules-load.service

我得到以下输出:

status systemd-modules-load.service

图片

如果重复执行该systemctl命令,有时会得到其他进程,而不是179,例如183。

万一有需要,

sudo ls /lib/systemd/system/systemd-modules-load.service

给我

/lib/system/systemd-modules-load

(written in green)

journalctl

输出大量数据。红线如下:

第一条红线:

图片

第二和第三条红线:

图片

第四条红线:

图片

我非常感谢您的帮助。我不知道下一步该怎么做,而且我在网上搜索后一无所获。

Answers:


22

我在ubuntuforums.org的讨论中找到了我真正需要的东西。具体来说,我在寻找命令:

dpkg --configure -a

上面链接文章提到了四个可以帮助解决此问题的命令,并指出它们可能需要“不按特定顺序”重复:

apt-get update
dpkg --configure -a
apt-get dist-upgrade
apt-get -f install

4
链接的文章使我有点失望,因为它的第一个命令(apt-get update)没有帮助。但是您指向文章第二个命令(dpkg --configure -a)的指针完成了这项工作。现在,我的机器又恢复了运行(并且我没有卡在手机上),我看到该文章建议可能需要“以不特定的顺序”重复这些命令。万一文章消失了,另外两个命令是apt-get dist-upgradeapt-get -f install
史蒂夫(Steve)

我只想补充一点,我正在使用Gem 5,并且正在尝试引导Ubuntu 16.04.1 / 3(服务器)的磁盘映像,尽管它在QEMU中正常启动,但它给了我这个错误当我在Gem 5中以完整系统模式运行时,我确定该解决方案已经为其他人使用,但是我想补充一点,它不能解决我的问题。
Joshua Detwiler

apt-getupdate`只有真正需要拿出前apt-get dist-upgrade。如果您不知道自己在做什么,则应该避免运行dist-upgrade,尤其是dpkg --configure -a已经为您工作时。同样,请不要使用apt-get -f install它,因为它可能会严重破坏您的系统。
virtualxtc

2

我的印象是更新/内核更新出了点问题:

启动进入恢复模式

  • 菜单“根”:手动撤消的网络

    ifconfig ethx <ip> netmask <mask> up
    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    apt-get update
    
  • 菜单“ dpkg”:修复安装

  • 返回菜单“ root”:修复内核initramfs

    update-initramfs -k all -u
    update-grub
    

为“ echo“ nameserver 8.8.8.8”> /etc/resolv.conf'行+1 :)
Tom

1

我只是在ubuntu 16.04安装中遇到了这个问题。当我journalctl | grep modules从恢复根shell进行调查时,发现它正在尝试从16.10(较新)内核加载模块。它被保留在USB记忆棒上的数据,因为我没有在向其写入图像(在使用unetbootin的Mac中)写入图像之间对其进行格式化。

因此,格式化USB记忆棒,重新制作可启动记忆棒,就和黄金一样好。

:)


1

就我而言,这可能是在安装更新正在进行且系统未完全更新而关闭的情况下发生的。

Ctrl+ Alt+ F1(用于命令行界面)

之后,

sudo dpkg --configure -a
sudo apt-get dist-upgrade 
sudo apt-get -f install  (this command is optional, because the `dist-upgrade` command should have everything)

最后,

sudo init 6

(重新启动系统)

现在,您将看到Ubuntu 16.04 LTS,没有任何错误。

注意:更新可能需要一些时间。就我而言,花费了45-60分钟。


如果您的系统是最新的,则无需花费45-60分钟的时间
virtualxtc


0

对我而言,这是我的家庭分区的一个问题,因此运行fsck /dev/sdb6并回答yes即可解决所有问题。

受影响的分区可能不在sdb6您的系统上。在这种情况下,您必须将设备名称从调整为/dev/sdb6分区使用的名称。如果您不知道正确的路径名,则可以通过运行mount或检查/etc/fstab(可以使用cat /etc/fstab)的内容来找到它。


0

我也有

Failed to start Load Kernel Modules

每次启动时。

我做了Francisco的建议,但是并没有消除错误。

什么做的工作虽然是注释掉该行暴发户在我的/ etc / modules文件,NVIDIA驱动程序。

当我切换驱动程序时,我所有的问题都开始了,这很有意义。导致我入迷的一件事是台词

... systemd-modules-load[279]: could not find module by name='off'
... Failed to insert 'off': No such file or directory

在我的/ var / log / syslog中。顺便说一句,我正在运行Ubuntu 18.04。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.