Ubuntu 分区未知,无法挂载或更新 grub

Ubuntu 分区未知,无法挂载或更新 grub

断电后,出现以下错误:

error: unknown filesystem
grub rescue>
  1. 我使用实时 USB 运行了 Ubuntu 修复。日志可以在这里

  2. 这个 grub 消失后(我无法选择要启动哪个操作系统),默认情况下我现在启动 Windows。我在 Linux 上运行一个重要的应用程序,但我无法启动 Linux。

  3. 然后我编辑了 grub 文件并尝试更新 grub,但它显示:

     failed to get canonical path of /cow
    
  4. 下一个选项是sudo mount /dev/sda5 /mnt但是我收到错误:

     mount: you must specify the filesystem type
    
  5. 我不知道文件系统类型,因为我没有在这台特定的机器上进行安装。

  6. 我也试过了cat /etc/fstab,但它没有显示 sda5,使用命令也无法看到它blkid。从 GUI(因为我已经从实时 USB 启动了系统),我可以看到分区 5 具有未知类型。

更新:fsck -a -t ext4 /dev/sda5立即出现以下错误:

来自 util-linux 2.20.1 fsck.ext4 的 fsck:尝试打开 /dev/sda5 /dev/sda5 时超级块中的魔数错误:无法读取超级块或未描述有效的 ext2/ext3/ext4 文件系统。

如果设备有效并且确实包含 ext2/ext3/ext4 文件系统(而不是 swap 或 ufs 或其他东西),则超级块已损坏,您可以尝试使用备用超级块运行 e2fsck:e2fsck -b 8193 或 e2fsck -b 32768

答案1

测试一下:

您必须从 live-dvd/usb 启动。

打开一个终端。

运行:

sudo -i
fsck -a -t ext4 /dev/sda5
mount /dev/sda5 /mnt
mount --bind /dev /mnt/dev 
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
grub-install --root-directory=/mnt /dev/sda
update-grub
umount /mnt
reboot 

答案2

根据救援日志你的评论sda5(您的 Linux 分区)上的文件系统头严重损坏。您可能能够从备份超级块中恢复,如输出中所述fsck(来自实时系统正如 kyodake 所述):

sudo e2fsck -b 32768 /dev/sda5

如果这不起作用,文件系统可能无法修复。如果你有重要数据,你可以尝试使用数据恢复工具来挽救它,例如如社区帮助中所述

相关内容