web-dev-qa-db-ja.com

USBスティックにGrub2をインストールするにはどうすればよいですか?

起動可能なUSBスティックにGrub2をインストールするにはどうすればよいですか?

どこかでGrub2が「.iso」イメージから直接ブートできると聞いたので、Grub2がいくつかの「liveCD」isoイメージをブート可能なUSBスティックにドラッグアンドドロップして試してみるのが簡単になることを願っています。

7
David Cary
  1. USBドライブにGrub2をインストールします(/USBDRIVEおよび/dev/sdx正しいマウントポイントとUSBデバイス)

    Sudo grub-install --boot-directory=/USBDRIVE/boot /dev/sdx
    
  2. 必要なディレクトリを作成する

    mkdir /USBDRIVE/iso
    mkdir /USBDRIVE/boot/grub/scripts
    
  3. これを保存 autoiso.cfg スクリプトを/USBDRIVE/boot/grub/scriptsディレクトリ

  4. grub.cfgファイルに/USBDRIVE/boot/grubディレクトリ

    configfile /boot/grub/scripts/autoiso.cfg
    

これで、いくつかの「liveCD」isoイメージをUSBスティックのisoディレクトリにドラッグアンドドロップして起動できます。次のライブシステムがサポートされています。

  • grml
  • 別れ魔法
  • スラック
  • Tinycore
  • Ubuntu
  • loopback.cfg を使用したライブシステム
4
Ron

初期化システムがハードドライブデバイスおよび光メディアデバイスをスキャンしてルートファイルシステムを探す場合、既存の起動可能なISOイメージを微調整して、USBメモリスティックなどのハードドライブタイプのデバイスで動作させることができます。 Ubuntuは、ブート可能なインストール/ライブISOイメージにCasperを使用し、マウントしたいISOファイルシステムをどこでも探します。私はそれらをプレーンISOからハイブリッドISO/IMGファイルに変換することに成功しました。このファイルは、USBメモリスティックに直接書き込み、CDまたはDVDに書き込むことができます。これを達成するには、カーネル(およびメモリテスターイメージ)をISOに追加して(大きくなった)、stage2イメージのセクターの場所を割り当て、GRUBソースを変更してすべてのセクターをビルドインされ(ステージ1で直接、ステージ2のビルド構成を介して)、コンパイルされ、ステージ2が追加されたイメージが完成し、ステージ1がセクター0を置き換えます。

しかし、私はGRUB legacy(v1)を使用してこれを行いました。その後、ブート可能なプロジェクトのためにSYSLINUXに移動したので、GRUB2のプロセスを実際に解決することはありませんでした。デフォルトを設定する方法、または組み込みの構成を行う方法、または構成ファイルを参照する方法があります。これは、ISOを再構築せずに実行できるはずです。

これは、USBメモリスティックごとに1つのISOイメージでのみ機能します。複数がもっともらしい。同じカーネルを共有している場合は簡単です(たとえば、同じデバイスでUbuntuとKubuntuを使用している場合)。

ドラッグアンドドロップツールについては知りません。私はルートコマンドシェルで実行されるスクリプトを使用して自分のビルドを作成しました。私はこれをリリースプロジェクトにパッケージ化しておらず、意図もしていません。ドキュメンテーションはありませんが、「ビルド」スクリプト自体にコメントがあるので、あなた自身で行ってください。それをダウンロードして、私がしたことの正確な詳細を確認してください: http://ubuntu.slashusr.org/iso-for-hd-2010-10-11-225024.tar.gz

最後にこれを使用して、スクリプトの最終的な製品を確認できるUbuntu 11.04用のイメージをビルドしました。それらは http://ubuntu.slashusr.org/11.04/ にあります。mapファイルはセクターレイアウトを示します。

1
Skaperen