我今天启动计算机,发现了 Grub 救援命令提示符。我得到了这台电脑,上面装有 Linux 和 Windows 7,但我只使用过 Windows 部分。我对Linux一无所知,被这个“Grub”的东西吓了一跳。
它不会让我在命令提示符下执行任何操作,而且我无法启动 Windows。我有上网本,所以计算机上没有 CD 驱动器。我需要一种方法从这个命令提示符进入 Windows 7。通过(在手机上)进行一些搜索,我发现了一些可以让我进入 Windows 的内容。我试过这个:
rootnoverify (hd0,0)
chainloader +1
makeactive
boot
这是第一组没有给我带来错误的事情。但是当我输入“boot”时,它告诉我无法找到 Bootmgr...?我不懂这啥意思。我想做的就是能够再次启动 Windows,我不在乎如何启动,我只想访问。就像我说的,我的电脑没有 CD 驱动器,所以我不能使用磁盘。有没有办法通过 Grub 命令提示符来解决这个问题?任何答案将不胜感激。
谢谢。
答案1
1) 使用救援盘,启动 ubuntu 或任何其他 unix 版本..
2) 发出fdisk -l
命令查看窗口安装在哪个分区上。
3)挂载/boot
linux所在/media
目录的分区。
4)将chroot /media
你的根目录更改为/media。
5) 打开/boot/grub/grub.cfg
文件并进行编辑。如果不存在,请添加以下行;如果存在,则进行修改。
menuentry "Windows" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos2)'
search --no-floppy --fs-uuid --set=root 14445AFA445ADE54
chainloader +1
}
我假设 Windows 存在于/dev/sda2
并且14445AFA445ADE54
是您的分区 /dev/sda2` 的 UUID。您必须将其替换为您的 Windows 分区的 UUID。您可以通过以下方式找到它:
转到/dev/disk/by-uuid
目录。
做ls -l
。
你会输出这样的..
lrwxrwxrwx 1 root root 10 Aug 1 20:16 14445AFA445ADE54 -> ../../sda2
lrwxrwxrwx 1 root root 10 Aug 1 20:16 322C5AEB2C5AAA1D -> ../../sda1
lrwxrwxrwx 1 root root 10 Aug 1 20:16 7d41ed63-16cb-493c-91ce-02f7b3146fb6 -> ../../sda5
lrwxrwxrwx 1 root root 10 Aug 1 20:16 88e4dc0b-c986-4e1f-84a2-c09731555dec -> ../../sda7
lrwxrwxrwx 1 root root 10 Aug 1 20:16 c8ad3ea8-5467-4f22-803d-9584d32d8a79 -> ../../sda6
通过匹配分区,可以找到其对应的UUID。
重新启动电脑。现在它可以工作了。
答案2
尝试:
rootnoverify (hd0,1)
chainloader +1
makeactive
boot
在某些系统中,(hd0,0)
是“系统保留”分区。