私のArch Linuxでは、次のようにGRUBをインストールしようとしました。
grub-install /dev/sda
/dev/sda
UUIDを使用する代わりに。
ただし、2つのことを確認する必要があります。
または
/dev/sda
のUUIDが見つかりません。/dev/sda1
/dev/sda2
/dev/sda1
たとえば、UUIDにインストールしようとすると、次のように表示されます。*' error cannot find a grub drive for UUID. check your device.map '*
しかし、device.map
以下も存在しません/boot/grub/device.map
どうすればいいですか?
市。修正済み:ありがとう0番目を超えて/ dev / sdaのUUIDを見つけるのに役立ちます。しかし、2番目の質問についてはまだ質問があります。
私がしたいことは:
/dev/sdX
」
sudo grub-install /dev/sdX
これにより、現在のインストールを指すようにMBR情報が再作成され、一部のGRUB 2ファイル(すでに実行中)が再作成されます。前のコマンドの実行中は実行されないため、インストール後にsudo update-grubを実行すると、GRUB 2のメニューが最新の状態になります。 」
これはGRUBを再インストールする方法を示していますが、私が作成したいのは、デバイス/dev/sdb
にOSをインストールしようとしていることです/dev/sda
。始める唯一の方法は、次のように接続すること/dev/sdb
です。/dev/sda
よく。UUID
名前の代わりに処理したいのは、あるコンピュータから別のコンピュータに/dev/sda
名前が変更されるためです。/dev/sdX
市。編集2:より明確なものはわかりませんが、OS(USB2)からブートローダ(USB1)を取り外す必要があります。まだ方法が見つかりませんでした。
答え1
/dev/sda
通常、次のコマンドを使用してパーティションテーブルのUUID(PTUUID)を見つけることができます。
sudo blkid /dev/sda
grub
私はこのPTUUIDを使用してディスクドライブをマウントしようとしたことがありません。だからこれがうまくいっているのか、それともディスクが大丈夫かを言うことはできません。きれい今後。
編集:PTUUID <>パーティションテーブルの説明。
edit2:もっと調査しましたが、PTUUIDはいいえ何にgrubをインストールしたいですか? !
あるからいいえハードディスク全体のUUIDの最初のものに答える必要があります。 /dev/sdaのUUIDがないため、見つかりません。
2番目のポイントは、GRUBをパーティションにインストールできることです。フォローしてみると、この説明がよくわかります。協会
答え2
MBRにインストールされると、GRUBはもはや何が何であるか気にしません。数字ドライブはインストール中に存在します。私が知っている限り、GRUBのステップ1はGRUBのステップ2をロードします。〜しなければならない同じディスクに常駐します。ただし、カーネルは別のドライブにあり、そのドライブのパーティションはUUIDによって識別される可能性があります。 Linuxが現在起動していてsdb
、セカンダリパーティションを準備しているとしますsdax
。
mount /dev/sdax /mnt
grub-install /dev/sda --boot-directory=/mnt
grub-mkconfig -o /mnt/grub/grub.cfg
これにより、GRUBのフェーズ1がMBRにインストールされ、フェーズ2のsda
構成データがファイルシステムにインストールされますsdax
。
安全に使用するにはひどいアイデア。あいまいさによるセキュリティは機能しません。 Super GRUB2ディスクをお持ちの人は誰でもシステムを起動できます。