我收到此错误:
Error: unknown filesystem.
grub rescue>
Run Code Online (Sandbox Code Playgroud)
我不确定我做了什么。我相信我在 Acer 上网本上通过 Windows 安装了 Ubuntu。然后我尝试安装Linux Mint,但它不会开始安装。
我关闭上网本并重新打开。现在我得到了错误。
我已经阅读了很多类似的其他问题,但就我而言,我无法启动 CD。如果我将 Ubuntu CD 或 Linux Mint CD 放入我的外部 CD/DVD 驱动器并更改我的 BIOS 以首先启动 CD-ROM,它只会给我相同的错误屏幕。
从日期为 2012-05-26 02:54:29Z 的评论中复制的更新
以下是我的命令的一些结果:
grub rescue>ls (hd0) (hd0,msdos5) (hd0,msdos1)
grub rescue>ls (hd0,msdos5) unknown filesystem
grub rescue>ls (hd0,msdos1) unknown filesystem
grub rescue>ls (hd0) unknown filesystem
Run Code Online (Sandbox Code Playgroud)
小智 83
以下为我解决了这个问题,我有 Windows 7 和 Ubuntu 10.04。运行以下命令后,我不需要每次都运行这些命令,并且能够正常启动两个操作系统:
set root=(hd0,6)
set prefix=(hd0,6)/boot/grub
insmod normal
normal
Run Code Online (Sandbox Code Playgroud)
现在,一旦您启动到 Ubuntu,还要运行以下两个命令:
sudo update-grub
sudo grub-install /dev/sda
Run Code Online (Sandbox Code Playgroud)
注意:/dev/sda是您想要安装 GRUB 的驱动器,它可以是/dev/sdb或其他东西,但通常是/dev/sda
考虑到hd0根据磁盘的顺序可能是 X (0,1,2..) 并且6也可能不同,(hd0,gpt7)例如可能是。
Rah*_*ara 36
首先从 ISO 映像启动到 Ubuntu。
找到 Ubuntu 分区和包含 GRUB 模块的文件夹。
必须找到包含模块的 GRUB 文件夹,以便可以加载正确的模块。这个文件夹是在 Ubuntu 的初始安装过程中创建的,应该位于 Ubuntu 分区中。该文件夹通常位于(hdX,Y)/boot/grub 或 (hdX,Y)/usr/lib/grub/i386-pc。找到您现有的 Ubuntu 分区和模块文件夹。
ls # List the known drives (hdX) and partitions (hdX,Y)
ls (hdX,Y)/ # List the contents of the partition's root
ls (hdX,Y)/boot/grub # Normal location of the Grub 2 modules.
ls (hdX,Y)/usr/lib/grub/i386-pc # Alternate location of the Grub 2 modules.
Run Code Online (Sandbox Code Playgroud)
ls - 应该返回所有已知的驱动器 (hdX) 和分区 (hdX,Y)ls (hdX,Y)/ - 应该显示分区根目录的内容。 ls (hdX,Y)/boot/grub- 应该显示几十个 *.mod 文件。这是您要查找的文件夹。加载模块。
set prefix=(hdX,Y)/<path to modules>
Run Code Online (Sandbox Code Playgroud)
例子:
set prefix=(hd0,5)/boot/grub
set prefix=(hd1,1)/usr/lib/grub/i386-pc
Run Code Online (Sandbox Code Playgroud)
加载模块:
insmod linux
insmod loopback
insmod iso9660
insmod fat # If ISO is located on fat16 or fat32 formatted partition.
insmod ntfs # If ISO is located on an NTFS formatted partition.
insmod nftscomp # If NTFS compression is used on the partition. Load if you aren't sure.
Run Code Online (Sandbox Code Playgroud)一个“找不到文件”错误意味着在前缀的路径不正确或者特定的模块不存在。可以使用 set 命令查看前缀设置。使用正确的路径重新运行“set prefix=”命令。
找到 Ubuntu ISO 文件。
创建环回设备。
loopback loop (hdX,Y)/<path to ISO>/<ISO-name.iso>
Run Code Online (Sandbox Code Playgroud)
例子:
loopback loop (hd1,1)/path/to/ubuntu-10.04.1-desktop-i386.iso
Run Code Online (Sandbox Code Playgroud)加载 Linux 内核和 initrd 映像。
set root=(loop)
linux /casper/vmlinuz boot=casper iso-scan/filename=/<ISO-name.iso> noprompt noeject
initrd /casper/initrd.lz
Run Code Online (Sandbox Code Playgroud)
iso-scan/filename= entry. 见第二个例子。例子:
linux /casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04.1-desktop-i386.iso
linux /casper/vmlinuz boot=casper iso-scan/filename=/my-iso/ubuntu-10.04.1-desktop-i386.iso
Run Code Online (Sandbox Code Playgroud)开机。
应该是这样。如果命令运行时没有任何消息/错误,则命令被接受为输入。现在是启动的时候了:
boot
Run Code Online (Sandbox Code Playgroud)更多信息在论坛帖子HOWTO: Boot & Install Ubuntu from the Grub Rescue Prompt
现在在启动后执行此操作:
如何修复:错误:未知文件系统 grub 救援?发布了同样的问题并解决如下,
sudo mount /dev/sdaX /mnt
在这里,sdaX是您的引导分区。你可以得到这样的清单sudo blkid,
/dev/sda1: LABEL="Windows XP" UUID="96A4390DA438F0FB" TYPE="ntfs"
/dev/sda3: LABEL="Ubuntu 11.04" UUID="b61fcae3-7744-45b4-95b9-7528d50a3652" TYPE="ext4"
/dev/sda5: LABEL="Se7en" UUID="A2DC9D71DC9D4109" TYPE="ntfs"
/dev/sda6: LABEL="Development" UUID="DEB455A1B4557CC9" TYPE="ntfs"
/dev/sda7: LABEL="EXTRA" UUID="D8A04109A040F014" TYPE="ntfs"
/dev/sda8: LABEL="SONG" UUID="46080FCD080FBAC7" TYPE="ntfs"
/dev/sda9: LABEL="BACKUPS" UUID="766E-BC99" TYPE="vfat"
Run Code Online (Sandbox Code Playgroud)
注意:sdaX必须是Linux分区。
sudo grub-install --boot-directory=/mnt/boot /dev/sda
sudo update-grub
阅读前:下面的答案适用于刚刚更新/恢复/重新安装/安装 OS X 的 Ubuntu 用户。如果不是这种情况,答案很可能会起作用(例如,如果您的分区中有任何不一致)表),但我不确定。
对我来说,这是在更新到OS X Mavericks (10.9) 之后发生的。基本上,可能发生的是,OS X创建恢复分区(“恢复HD”),该系统只检测有时。例如,Ubuntu 中的GParted可以很好地看到恢复分区,但是在终端 ( fdisk -l) 中列出分区时,您可能看不到这些分区。
为了诊断情况确实如此,首先使用GRUB救援引导到 Ubuntu。为此,请关注此页面或查看有关此问题的任何其他答案是否可以让您进入 Ubuntu。对我来说,运行以下命令暂时允许我启动正确的分区。根据您的硬盘驱动器和分区的设置方式,它可能会有所不同:
grub rescue> set prefix=(hd0,6)/boot/grub
grub rescue> insmod normal
grub rescue> normal
Run Code Online (Sandbox Code Playgroud)
现在,登录到 Ubuntu 并检查 GParted。如果您看到恢复分区,请打开终端并键入fdisk -l以查看是否检测到恢复分区。如果它没有列出相同的分区,请检查设备/分区列并查看它们是否也不匹配(例如,在 GParted 中,您的引导分区可能是/dev/sda4,但/dev/sda3在运行时是fdisk)。如果是这种情况,请继续阅读。如果不是,看起来您的分区排列正确。您可以选择继续阅读并按照说明进行操作(如果 GRUB 在恢复/重新安装/等之前工作,这应该可以正常工作),或者只是在正确的分区上重新安装 GRUB。
为了解决这个问题,我们想要做的是去掉恢复分区——它会导致问题和不一致,删除它不应该造成损坏。理想情况下,您希望将其与普通的HFS+ OS X 分区合并,因此请按照此问题并在此处回答。合并后,GRUB 应该会恢复正常。
小智 0
您的外部 CD/DVD 可能是 USB 设备。您可能无法告诉 BIOS 从它启动。当您启动 ACER 时,屏幕底部(或顶部)会出现一条消息,显示类似“F2 进入设置,F12 启动启动菜单”之类的内容。当您知道需要按什么键才能进入启动菜单时,请将 CD 放入外部设备,打开或重新启动机器,然后慢慢地按下该键,直到出现一个临时菜单,允许您从外部 CD 启动。
您可能需要使用 CD 中的 gparted 来检查您的硬盘驱动器并决定如何修复它以便您可以使用它。这超出了我在这里可以描述的范围