GRUBを使用してUSBから起動する


48

私の友人のラップトップは自動車事故に遭っていました(彼は大丈夫です!)。しかし、ラップトップは非常に古く、Acer Aspire 1520のCD-romドライブは壊れており、フロッピードライブはありません。

私はそれを見る前に彼にUSBブートを作成しましたが、彼のBIOSはUSBからブートできないことがわかりました。唯一私が持っている事はGRUBコンソールですが、彼はちょうど(USBで)XPをインストールし、ちょうど作品のためにそれを使用することに熱心です。

GRUBコンソールを使用してUSBにアクセスし、Windowsのインストールを開始することはできますか?それは難しい注文ですが、これが方法であるか、LAN経由でインストールしようとしても達成できないと思います。


1
私は、USB cd / dvdドライブを入手して、コンピューターを起動するように努めます。
jmreicha

1
この投稿では、必要な手動コマンドを示しています-ドライブ番号を調べるだけでよく、GRUBのタブ補完でそれを実現できます。
new123456

回答:


39

以下は、動作する可能性のあるgrubコマンドの簡単な例、説明、および警告です。

grub2

2010年以降のインストールで最も可能性があります。

set root=(hd1,1)
chainloader +1
boot

grub

2005年以前のインストールで最も可能性があります。

root (hd1,0)
chainloader +1
boot

2005年から2010年の間、推測は私のものと同じですが、間違ったバージョンのコマンドを使用すると、最初のコマンドで無害な構文エラーが発生するだけです。

正しいルートを選択する

起動時に、grubはデバイスをプローブして番号を割り当てます。パーティション化されたすべてのデバイス(ハードディスクとフラッシュドライブ)にも番号が割り当てられます。形式は(<deviceName>,<partitionIndex>)です。ではgrub2、パーティションインデックスが変更されたため、上記の2つの例は、異なるルートを使用することを考えているにもかかわらず、同じ効果があります。

最初のデバイス(hd0)は、ロードされたばかりのデバイスgrubです。その後、通常、すべての内部デバイスが外部デバイスの前に来ると想定できます。それらはほとんどの場合hd、数字の形式に なります。

コンマの後はパーティションインデックスです。ハードディスクとサムドライブはほとんど常にパーティション分割されるため、適切な(そしてほとんどの場合のみ)パーティションを選択する必要があります。通常、CD-ROMはパーティション化されていません。

その他のドキュメント:http : //www.gnu.org/software/grub/manual/html_node/Device-syntax.html

ルートパーティションを選択するときに、Tabキーを使用してデバイス名とパーティションインデックスをプローブできます。括弧を開き、Tabキーを押すだけでリストが表示されます。


5
set root=(hd1)起動可能なUSBドライブなど、デバイスがパーティション分割されていない場合は、(など)を使用してデバイス全体から起動することもできます。
white_gecko

6
追加するだけで、ls接続されているデバイスのリストを表示できます。
AntouanK 16

2
スタック交換はコメントありがとうございますが、この答えは本当に価値があります。あなたは私に多大な時間を節約しました。
ジョンミリター

コマンドを見つけることができませんroot
ビョークナンバーワンファン

13

new123456のコメントを詳しく説明するには:

USBデバイスは大容量記憶装置として検出され、ハードドライブと同様に扱われる必要があります。そのため、grubでroot (hd(まだEnterキーを押さないで)入力し、tabキーを1、2回押して、Grubが表示できるハードドライブを確認します。USBデバイスが認識されている場合は、おそらくhd1になります。パーティション番号を指定しないでください。右括弧を追加するだけです。したがって、行はになりますroot (hd1)。その後、次を入力します。

chainloader +1
boot

それでも解決しない場合は、に変更root (hd1)root (hd1,0)てもう一度試してください。

何らかの理由でGrubがUSBドライブを認識できない場合は、USB CDROMを接続して、起動してみてください。


7

chainloader +1BIOSは、(なぜ私はとにかくGRUBを使用したいとした)USBキーからのブートが得意ではない場合の事は動作しない場合があります。

この場合、https://help.ubuntu.com/community/Grub2/ISOBootには、少なくともUbuntuで機能する深い魔法があります。重要なのは、vmlinuzファイルを識別してiso-scan/filename引数を渡すgrubコマンドをいじることです。どういうわけか、それはブートファイルシステム全体がISOファイルに残っていることを把握するのに役立ちます。私はそれがどのように機能するかわかりませんが、機能します。これらは(おおよそ)私が使用したGrub 2コマンドです。

loopback loop (fd0,msdos1)/path/to/iso/file
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/path/to/iso/file noprompt noeject
initrd (loop)/casper/initrd.lz
boot

これ/path/to/iso/fileは、USBキー上のISOファイルへのパスでなければなりません。(fd0,msdos1)USBキーを識別します。タブ補完loopbackは行上で非常に役立ちますが、の引数には役立ちませんvmlinuz


私は別の質問に答えてこれに答えるつもりだったと思います。私はどれを知っていたらいいのに!
ポール・スタンシファー

efi/ uefiブートモードの場合、これらのgrub2コマンドはエラーを生成しますerror: can't find command 'linux'。コマンドをlinuxefiとに変更しますinitrdefi
サンビーン

ここのコンセプトが好きです。フラッシュドライブに含まれるISOを起動します。これにより、フラッシュドライブがブートCDビュッフェになります。フラッシュではなくCDから起動できるより機能的な例では、USBからの起動に問題があった場合、それらの中から選んだCDを焼くことができますよね?
ベンペン

2

これはあなたの友人の場合にはひどく役に立たないでしょう(最初の場所でデバイスでだまされることを知らない場合を除いて-多分USB CD-ROM、またはUSBフロッピードライブ?)これは素晴らしい小さなアプリケーションです。これにより、多くの古いマシンをリグして、USBで許可されていないときにUSBからブートできるようになりました。

Plop Boot Manager


0

BIOSがそれ自体を許可しない場合、grubでusbから起動できません。win7セットアップディスクの内容を含むハードディスクにある種のリカバリパーティションをセットアップし、grubをインストールしてから、それを使用してwin7セットアップパーティションを起動し、残りのハードドライブにインストールする必要がありました。


上記のコマンドの前に、おそらくコマンド「insmod usbms」を使用してから「insmod ehci」または「insmod uhci」を使用する必要があります。
クロードフランツ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.