好吧,我陷入了困境,没有多少后备计划,所以我希望有人能指导我恢复我的 Linux 安装。我对 Linux 系统和 Ubuntu 的了解有限,所以这可能是我一开始陷入困境的原因,所以我会尽力解释到目前为止发生的事情。
因此我需要清除 /boot 中的空间,因为 Webmin 报告存储空间不足。
uname -a
报告 4.4.0-137-generic 作为我的当前内核。
我运行了类似的命令,确保当前内核未列出:
sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`
现在我只剩下 4.4.0-137-generic、4.4.0-138-generic 和 4.4.0-139-generic,但是它们都无法启动,因为我收到以下错误:
内核崩溃-未同步:VFS:无法在未知块(0,0)上挂载根文件系统
我尝试过以下 chroot 选项:
sudo fdisk -l
sudo mount /dev/sdax /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
但是,在我挂载 sda1 之后,我无法再继续操作,mnt 显示 /boot 文件夹,并且我可以挂载 dev 文件夹,因为它们不存在于 /mnt 中。
当我能够启动到 4.4.0-137-generic 和其他一些选项时,我尝试了以下操作:
update-initramfs -u -k 4.4.0-137-generic
这并没有解决问题,我以前能够看到 GRUB 菜单中的恢复选项,但是它不再显示,我目前进入 tty,运行命令时显示 4.4.0-139-generic uname -a
。
这是我的第一篇帖子,格式不正确,缺少步骤信息,请见谅,可能我有点太过激动了。如果我可以修改任何内容以供将来参考,请告诉我。
因此,跟进一下,发现我的根分区在下面/dev/mapper/Server--vg-root
,我能够挂载所有文件夹,chroot
但是恢复 CD 是 32 位的,需要 64 位,这是我的下一步。
但是文件夹/dev/mapper/Server--vg-root/boot
是空的,虽然/dev/boot
不是。我需要使用以下命令安装它吗?还是我应该修复/dev/mapper/Server--vg-root/boot
以包含项目?
sudo mount --bind /dev/sda1 /mnt/boot
或者我如何检查 Grub 正在使用哪个文件夹以确认哪个文件夹需要修复?
答案1
经过进一步调查和了解,我发现我的系统与许多在线说明不同,因为它是使用 LVM 配置的,重新安装了旧内核等。系统似乎启动时没有问题,我的一些问题可能根本不是问题,只是对“看到” GRUB 启动和控制台未加载的设置一无所知。
有一件事确实有帮助,那就是 Super-Grub2-disk,因为它确认我的 Ubuntu 安装将加载-https://www.supergrubdisk.org/
在了解了我所拥有的内容之后,现在对我的系统进行一些整理。
需要注意以下几点:ESC 在我的系统上显示 Grub 菜单,而不是 SHIFT。要显示我的控制台,请使用 CTRL+ALT+F1 加载 TTY1 控制台,我需要更新我的 GRUB 配置安装以绕过此问题。