GRUB は Windows XP を検出しません

GRUB は Windows XP を検出しません

昨日、 に Arch Linux をインストールしました/dev/sda1。Arch をインストールした後、GRUB が「範囲外」と表示したため、Live Ubuntu USB を使用して 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 では OS の検出を妨げていた根本的な問題を解決するよう求められます。これは、スマーフにとって厄介な問題です。

さて、そうは言っても、GRUB が XP ドライブを検出できない原因はいくつかあります。私の調査によると、これは通常、パーティション自体に問題があることを示しています。Windows または Windows 修復ディスクから chkdsk を実行してみてください。これらが失敗した場合は、以下のフォーラム投稿を確認して、同様の問題が発生しているかどうかを確認してください。おそらく、Arch は、GRUB が OS を検出するために使用する小さなブート パーティションを破損しています。

http://ubuntuforums.org/showthread.php?p=9826152

いつものように、これらの手順を開始する前にすべてをバックアップしてください。

頑張ってください!ギアリー

関連情報