web-dev-qa-db-ja.com

GRUB:パーティション番号(hd0、x)を見つけるには?

私はgrubで遊んでいて、ルートを次のように変更します:

root (hda,x)

どのように私はxが何であるかを知ることができます/dev/sda7

fdisk -l

デバイスブートスタートエンドブロックIDシステム
/dev/sda1 * 1 1958 15727603+ 7 HPFS/NTFS 
/dev/sda2 1959 7476 44323335 f W95 Ext'd(LBA) 
/dev/sda5 1959 4569 20972826 7 HPFS/NTFS 
/dev/sda6 4570 5352 6289416 83 Linux 
/dev/sda7 6373 7119 6000246 83 Linux 
/dev/sda8 7120 7476 2867571 83 Linux 
/dev/sda9 5353 6135 6289416 83 Linux 
/dev/sda10 6136 6372 1903671 82 Linux swap/Solaris 

問題はGpartedビューでは、順序はsda5、sda6、sda7などとは異なりますが、順序は次のようになります。

  • sda6
  • sda9
  • sda10
  • sda7
  • sda8

ですからx/dev/sda7

20
Alexar

まず、GRUBでは通常のLinuxハードドライブ識別子を使用しないことを理解する必要があります。代わりに、文字はゼロから始まる数字に関連付けられます(つまり、hda = hd0、hdb = hd1など)。

次に、grub-legacyでは、パーティション番号はLinuxのように1ではなく0から始まるため、Linuxパーティション番号から1を引きます。そしてgrub2では、それは 1から始まります です。

例:hda1 =(hd0、0)

最後に、grubはhdデバイスとsdデバイスを区別しないため、すべてにhdというラベルが付けられます。

したがって、あなたの場合、/ dev/sda6のgrubエントリは(hd0、5)になるはずです。

16
Jonathan

確認する最も簡単な方法は、grub cliとタブ補完を使用することです。

まず、次のように入力します... root(hd0、

次に[タブ]を押します
タブ補完により、利用可能なパーティションがリストされます。かっこを閉じて次の行でkernel /

次に、もう一度[タブ]を押します。ファイルとディレクトリ構造が正しい場合は、正しいものを選択します。そうでない場合は、バックアップして、ルート行をやり直します。

9
fymita