EFIとBIOSの両方を持っていることに対する1つの余分なポイント/動機を示します。
Grub2からLive SystemRescueCD.isoループを起動するためのUSBスティック。
どうして?簡単な答え:多くのPCで起動します。一部はUEFIを搭載し、一部は32ビットの古いBIOSのみを搭載しています
本当に複雑な動機:可能であれば、高度なハードウェア(UEFI)を使用します。
実際のライブ使用サンプル:
- 4つのパーティションを持つUSBスティック(GPTモードでフォーマット)
- NTFS上の最初のパーティション(Windows 7以降で表示可能)と残りのサイズのUSBスティック
- Grub2およびSystemRescueCD.isoファイル用の2番目のパーティション(少なくとも1GiBが必要です(2GiBの場合、SystemRescueCD.isoの2つのバージョンを同時に実行できるため、古いバージョンを置き換える前に新しいバージョンをテストするためだけです))、通常はExt4ファイルシステムを使用しますそれのための
- 少なくとも512MiBでFat32としてフォーマットされたEFI(WindowsがESPと呼んでいるもの)の3番目のパーティション(使用するPCが少ないとブータブルメディアとしてUSBスティックが表示されないPCを見たことがある)
- BIOS_Grubの4番目のパーティション(フォーマットはありませんが、作成時にクリアされます)
1つの重要なこと:パーティションがシリンダーにアラインされていない場合、物理UEFI PCブートにリストされないが、他のUEFI PCおよびUEFIブートを使用するVirtualBOXに表示される8GiB LG USB Strict(私が所有)モードがアクティブになります... MiBに位置合わせされている場合、パーティションを作成するときにすべてのスペースを使用しますが、最後に1MiBに近いパーティション化されていないスペースはありませんが、シリンダーに位置合わせされると、最後の不完全なMiBは使用されません... (つまり、手動でシリンダーを調整します)それは機能しますが、私が言っているように、それはまだシリンダーに調整されています(私はあなたのためにパーティションツールをさせる代わりに手動でそれをしています)。
このような素晴らしいUSBリカバリスティックを取得する方法(2つのトリックがあります):
- パーティションをシリンダーに合わせます(MiBに合わせるための互換性が向上します)
- grub-install --target = i386-pcを実行してから、同じgrubパーティションで別のgrub-install --target = x86_64-efiを実行するため、両方のブートモードで1つのgrub.cfgのみを使用します
起動方法:
- a)古いBIOSから起動し、MBRをロードしてから、grubフォームBIOS_grubパーティションのStage2、Grub2パーティションのcore.imgをロードします
- b)UEFI互換のフォームから起動し、ESPパーティションから.efiファイルをロードします
- grub.cfgが読み取られます(grub2パーティションに存在する場合)
- grub2メニューが表示されます
- その後、ループSystemRescueCD.iso(dochaceパラメーター付き)から起動することを選択し、grub.cfgに2つのオプションを設定しました。32Bitsに1つ、64Bitsに1つ(2つのdostartxパラメーターに設定するため、実際には4つのオプションがあります) GUIで直接起動します)。
- 起動後にUSBスティックを取り出すことができます(このようなdocacheのおかげでLive Linux全体がramdriveにあります)、コマンドを入力する必要はなく、ペンドライブはマウントされません(再びdocacheパラメータのおかげです)。
このスティックを使用して、32ビットまたは64ビット(プロセサに拡張機能がある場合)で古いPC(USBから起動できる場合)を起動できますが、BIOSモードで起動します。
このスティックを使用して、32ビットと64ビットで新しいPC(USBから起動できる場合)を起動することもできますが、UEFIモードで起動します(ああ、UEFIモードで起動してからLinux Live SystemRescueCDを32ビットで起動するだけですモードおよび64ビットモード)。
だから私は、32ビットまたは64ビット、BIOSまたはUEFIなどに関係なく、現代または古い(USBブートサポートのみが必要です)近くのすべてのPCで起動できる1つのUSBスティックリカバリブートメディアをすべて持っています... 32ビットまたは64ビットを実行するものを選択します。
さらに、Windows 64Bits(古い32Bitsプロセッサ)のインストールを拒否するPCでテストしましたが、64ビットLinux Liveを実行できます(PAE機能がそのプロセッサに存在するため)。
サイドノート:NTFSなどの最初のパーティションは、Windows 7以降で共有できるデータを保持するためのものです(XPはGPTパーティションをサポートしていないため、XPには表示されません)...ディスクの一部、好きな場所に置くことができますが、パーティションテーブルの最初のエントリとしてマッシュに存在します。これは、リムーバブルにパーティションをマウントするためのhateable windowsモードが原因です。他を同時にマウントすることはできません。
WindowsおよびUSBパーティションの追加:partitiongテーブルのパーティションエントリをスワップする場合、つまり、アクセスするパーティションをテーブルの最初のパーティションとして配置すると、windowsからアクセスできます(形式がわかっている場合、fat32およびNTFS直接、特別なドライバーを使用したext2など)、パーティションテーブルの最初のエントリにあるものにのみアクセスを許可します... Windowsでこのような作業を実行できるツール(BootICEx86.exeと呼ばれる)がありますUSBスティックを取り外す必要もありません。
スーパーエクストラ:特別なツール(レキサーのツールを使用)で少し変更できるペンドライブ(ソニーの16GiBを所有しているのは非常に幸運です)もあるため、WindowsではUSBスティックではなくUSB HDDとして表示されます、その変更後、すべてのウィンドウでその上のパーティションを削除、作成、管理できます。また、それぞれが独自の文字を持つ複数のパーティションを同時にマウントできます。
Linuxユーザーは、Linuxをパーティション化可能なブロックデバイスと見なし、Windowsのようにパーティションのマウントなどをブロックする特別なコードを実装しないため、これについて心配する必要はありません。
ああ、はい、この最後の段落はM $の誰かがそれらを読んだ場合に備えて書かれているので、彼らの顔は床に落ちて、私はそれらを削除することを試みていますWindowsのcodeいコードを使用し、ユーザーがネイティブな方法でusbスティックにパーティションを作成できるようにします。