我昨天在 上安装了 Arch Linux /dev/sda1
。我使用 Live Ubuntu USB 更新 GRUB,因为安装 Arch 后,GRUB 显示:“超出范围”。因此我更新了 GRUB,一切正常,但 GRUB 无法从 识别我的 Windows XP /dev/sda5
。
fdisk -l 打印:
Disk /dev/sda: 82.3 GB, 82348277760 bytes
255 heads, 63 sectors/track, 10011 cylinders, total 160836480 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: 0xaeb8aeb8
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 9682943 4840448 83 Linux (Arch root)
/dev/sda2 9684990 160835583 75575297 5 Extended
/dev/sda5 64372797 106446689 21036946+ 7 HPFS/NTFS/exFAT (WIN XP)
/dev/sda6 106446848 108404735 978944 82 Linux swap / Solaris (Ubuntu Swap)
/dev/sda7 108406784 117868543 4730880 83 Linux (Ubuntu root)
/dev/sda8 117870592 160835583 21482496 83 Linux (Ubuntu home)
/dev/sda9 9684992 64372735 27343872 83 Linux (Arch home)
Partition table entries are not in disk order
我尝试安装 os-prober,但没有显示 WIN XP...我尝试在以下位置为 Windows 写入一个条目/etc/grub.d/40_custom
:
menuentry "WIN XP" {
set root='(hd0,5)'
chainloader +1
}
我更新了 GRUB,但是它不起作用。
那么我需要做什么?谢谢!
答案1
GRUB 2 的设计比 GRUB 1 更加智能,这意味着您不再需要手动配置菜单。相反,GRUB 现在会让您解决阻止其检测操作系统的根本问题,这对 smurf 来说可能是一件麻烦事。
现在,话虽如此,有几种情况可能会阻止 GRUB 检测您的 XP 驱动器。根据我的研究,这通常表明分区本身有问题。您应该尝试从 Windows 或 Windows 修复磁盘运行 chkdsk。如果这些失败,请查看下面的论坛帖子,看看您是否遇到类似的问题。最有可能的是,Arch 损坏了 GRUB 用于检测操作系统的小型启动分区。
http://ubuntuforums.org/showthread.php?p=9826152
与往常一样,在开始这些步骤之前请备份所有内容。
祝你好运!Geary