这里出现错误消息结束内核恐慌 - 未同步:试图终止 init!退出代码=0x00007f00

这里出现错误消息结束内核恐慌 - 未同步:试图终止 init!退出代码=0x00007f00

当我正常使用导航器和文本编辑器时,我的操作系统崩溃了,所以我决定手动强制关闭,当屏幕打开并且正在加载操作系统时,它出现在 busybox 屏幕上,我应该在其中输入一些内容initramfs,所以我输入:

<initramfs> fsck /dev/sda2/

在这个过程中我所有的问题都输入了yes,

现在我每次打开电脑都会面对这个屏幕:

在此输入图像描述

我该如何继续呢?我在整个网络中搜索了任何可以帮助我的答案,但看起来没有解决方案。我的Ubuntu版本是Ubuntu 20.04 Focal Fossa

我尝试从这篇文章运行下面的这些命令https://askubuntu.com/questions/910218/sbin-init-no-such-file-or-directory-not-able-to-boot-ubuntu-desktopTopHat 建议更新我的内核,但当我这样做时,sudo mount -a我遇到了:sudo: error while shared libraries: libselinux.so.1: cannot open shared object file: no such file or directory

答案1

内核恐慌在这里有点转移注意力,因为它是先前错误的结果。在您的屏幕截图中,第一个异常启动消息是:

/sbin/init: error while loading shared libraries: libselinux.so.1: cannot open shared object file: No such file or directory

所以看起来该文件libselinux.so.1现在丢失了。

根据Ubuntu 包搜索引擎libselinux.so.1位于包中libselinux1,文件应位于/lib/x86_64-linux-gnu/libselinux.so.1

Hardware name:屏幕截图中的行以及调用跟踪中 Rxx 寄存器名称的存在do_syscall_64告诉我,您正在使用 64 位 x86 版本的 Ubuntu,因此您需要下载的任何包的“架构”都需要是amd64。)

你应该下载那个包对于某些可以与恢复启动介质一起使用的介质,请执行以下步骤 1、2 和 3您已经找到的说明访问损坏的 Ubuntu 安装的根文件系统:

<boot using external media>
mount /path/to/disk /mnt
mount --rbind /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev

然后将包含丢失/损坏的库的包重新安装到当前安装的安装位置/mnt

dpkg --root=/mnt -i <path to the package>/libselinux1_3.0-1build2_amd64.deb

显然,替换<path to the package>为下载libselinux1_3.0-1build2_amd64.deb文件的实际路径。

然后看看现在是否可以成功使用mount损坏的安装的命令:

chroot /mnt mount -a

如果这导致出现关于不同缺失库的另一条错误消息,请使用“搜索包的内容”部分包搜索页面找到包含该库的包,然后以相同的方式下载并重新安装它。

(如果您发现大量库已损坏,这可能会变得相当乏味。在这种情况下,您可以考虑备份您的主目录并重新安装。如果您将所有库都放在一个单一的目录中,/mnt/etc您的主目录现在将位于/mnt/home文件系统;否则请查看/mnt/etc/fstab您需要安装哪个文件系统才能访问您的主目录。)

如果chrootmount -a命令成功,可以使用chroot /mnt进入chroot环境,然后重建最新内核的initramfs:

update-initramfs -u -k 5.13.0-30-generic

相关内容