我的系统配置为双启动 Ubuntu 12.04.1 LTS 和 Windows 7。今天我拿到了 Windows 8 的 MSDN 版本,并将其安装在 Windows 7 上。现在计算机直接启动到 Windows 8,无需加载 GRUB屏幕。
所以我按照以下建议的步骤进行操作:https://help.ubuntu.com/community/RecoveringUbuntuAfterInstallingWindows。运行这个命令:
ls -l /dev/disk/by-label/
给出以下输出:
total 0
lrwxrwxrwx 1 root root 10 Sep 11 07:51 Entertainment -> ../../sda2
lrwxrwxrwx 1 root root 10 Sep 11 02:45 PENDRIVE -> ../../sdb1
命令还fdisk -l
给出了输出:
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1246aa23
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 319582199 159790076 7 HPFS/NTFS/exFAT
/dev/sda2 319582208 602906623 141662208 7 HPFS/NTFS/exFAT
/dev/sda3 602908672 625135615 11113472 83 Linux
Disk /dev/sdb: 1939 MB, 1939865600 bytes
64 heads, 63 sectors/track, 939 cylinders, total 3788800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xc3072e18
Device Boot Start End Blocks Id System
/dev/sdb1 * 2248 3788799 1893276 c W95 FAT32 (LBA)
所以我假设我必须运行这个:sudo grub-install /dev/sda3
让 GRUB 启动并运行。但我收到此错误:
/usr/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?).
谁能指导我正确的方向吗?当前的 Ubuntu 安装对于我的需求来说太过定制,以至于无法因为启动管理器问题而丢失!任何帮助深表感谢!
答案1
尝试使用 chroot 方法:(在 root 中使用所有这些命令,或使用 sudo)
mount /dev/sda3 /mnt/
mount -o bind /dev /mnt/dev
mount -o bind /proc /mnt/proc
cp /proc/mounts /mnt/etc/mtab/
chroot /mnt /bin/bash
grub-install /dev/sda
答案2
您始终可以使用 Windows 启动管理器创建双启动。
添加 Ubuntu 条目的过程如下:
- 从 Ubuntu“/boot/grub/boot.img”复制到 Windows“c:\”(您可以在 Windows 中使用“ext2fsd”实用程序访问 Ubuntu 文件系统)
- 在 Windows BCD 中创建一个指向 c:\boot.img 的引导扇区加载程序
答案3
sudo grub-install /dev/sda
由于 GRUB 安装在驱动器的 MBR 中,而不是分区上。