web-dev-qa-db-ja.com

UEFI専用の起動可能なUSBライブメディアを作成する方法

Ubuntuを現在利用可能なWindows 8コンピューターにインストールする場合、両方の方法で起動できるライブメディアを持っていることが問題になる可能性があります。

つまり、EFI-onlyブータブルUSBライブメディアを作成する主な利点は、UEFIを介して確実に起動およびインストールされることです。

ValveはすでにDebianベースのSteam OSとUNetbootinでUEFIのみのUSBインストーラーを起動しているので、UbuntuのStartup Disk Creatorに代わるトップ投票の選択肢— UEFI互換ではないため、誤解を招く可能性があります。UEFIのみのブータブルUSBライブメディアを作成するための別のトピックが必要です。

105
LiveWireBT

概要

UEFIのみの起動USBライブメディアの作成は簡単です。ファイルをFAT32-formattedUSBドライブにコピーするだけです。 それだけです!

メディアをインストールまたは起動するには、次のことに注意してください。

目次

  • ISOメソッドからファイルをコピーします
    1. ターミナル経由の例
    2. GUI経由の例
    3. Windowsでの例
  • ISOループバック方式(高度)
    1. バイナリを作成する
    2. 構成ファイルの作成
    3. 永続性を追加する
    4. 整合性の確認
    5. UEFIセキュアブート

1. ISOメソッドからファイルをコピーします

この方法は、WindowsなどのEFIローダーを含む他のインストールメディアでも機能します。

1.1。ターミナル経由の例

604A-00EAがUSBドライブであり、既にp7Zipがインストールされている場合、次のようなことができます。

$ 7z x ubuntu-12.04-desktop-AMD64.iso -o/media/$USER/604A-00EA/

このUSBドライブにパーティションが1つしかない場合は、これで完了です。 parted経由:

# parted /dev/sdX set 1 boot on

/dev/sdXはUSBドライブで、1はブートに使用するパーティション番号です。

1.2。 GUI経由の例

  1. .isoファイルをマウントし、その内容をUSBドライブにコピーします。押す Ctrl+H Nautilusで非表示ファイルも表示およびコピーします。

    nautilus showing Disk Image Mounter in context menu when .iso-file is selected

  2. GParted 経由でブートフラグを追加します。

    GParted showing how to manage partition flags

1.3。 Windowsでの例

  1. 上記と同じ、ファイルをコピーするだけです。
  2. 押す Windows/Super+X、ディスクの管理に移動し、パーティションがアクティブとしてマークされているかどうかを確認します。 Windows 8より前のWindowsバージョンでは、次を押します。 Windows/Super+R 実行メニューを開いてdiskmgmt.mscを開くと、ディスクの管理が開きます。

2. ISOループバック方式(高度)

ISOイメージからコンテンツを抽出する代わりに、GRUBおよびGRUB2は、ループバックデバイスを介してISOイメージから直接起動できました。 ISOイメージがUEFIブート可能であれば、USBドライブに混乱を生じさせることなく、異なるオペレーティングシステムで複数のISOを含むUSBドライブをセットアップできます。

Windowsも起動したい場合は、 SARDU をご覧ください。 2005年頃にWindows PEで使用したことを思い出し、USBドライブとUEFIをサポートするように更新されたようですが、このツールはレガシーブートもサポートしていることを思い出してください。

私たちは何が必要なのか?

  • GRUB構成ファイルの非常に基本的な知識。
  • UEFIブートとGRUBの非常に基本的な知識。多数のモジュールを含む独自のGRUBブートローダーイメージを生成するためです。
  • UEFIブート可能ISOイメージ、FAT形式のUSBドライブ、およびLinuxを実行するマシン。
    • いいえ、LinuxのUEFIをインストールする必要はありません(チキンとエッグの場合があります)。VirtualBoxのような従来のLinux VMは問題ありません。

2.1。バイナリを作成する

UbuntuマシンまたはVMパッケージに grub-efi-AMD64-bin がインストールされていることを確認します(grub-efi-ia32-binは32ビットIntelアーキテクチャでも利用可能です。新しいリリース)。パッケージは別のディストリビューションで異なる名前を持っている場合があります。 パッケージのファイルリスト を比較して、ディストリビューションで適切なパッケージを見つけることができます。

次のコマンドはGRUBイメージを生成します。この場合、UEFIファームウェアを搭載したすべてのコンピューターが実行できるEFIバイナリです。

grub-mkimage -o bootx64.efi -p /efi/boot -O x86_64-efi \
 fat iso9660 part_gpt part_msdos \
 normal boot linux configfile loopback chain \
 efifwsetup efi_gop efi_uga \
 ls search search_label search_fs_uuid search_fs_file \
 gfxterm gfxterm_background gfxterm_menu test all_video loadenv \
 exfat ext2 ntfs btrfs hfsplus udf

すべてのstandardUEFIファームウェアは、\EFI\BOOT\という名前のファイルをboot{Arch}.efiで調べる必要があるため、USBドライブにフォルダーを作成し、作成したばかりのイメージをコピーします。この場所。 x64の代わりに他のアーキテクチャも使用できますが、x64/AMD64でシンプルに保ちましょう。

2.2。構成ファイルの作成

grub.cfgと同じディレクトリに配置する必要があるbootx64.efi構成ファイルの非常に基本的な例は、次のようになります。

set timeout=3
set color_highlight=black/light-Magenta

menuentry 'Boot Ubuntu 14.04.2 LTS from ISO' {
        set isofile="/efi/boot/ubuntu-14.04.2-desktop-AMD64.iso"
        loopback loop $isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject quiet splash persistent --
        initrd (loop)/casper/initrd.lz
}
submenu 'Useful snippets' {
    menuentry 'Ubuntu' {
            chainloader /efi/ubuntu/grubx64.efi
    }
    menuentry 'Windows' {
            chainloader /efi/Microsoft/Boot/bootmgfw.efi
    }
    menuentry 'Firmware Setup' {
            fwsetup
    }
}

重要なことは、Boot Ubuntu 14.04.2 LTS from ISOというタイトルの設定ブロックです。好みに合わせて色とタイムアウトを変更できます。 black/light-Magentaを選択したのは、まだ少しUbuntu風に見えますが、他の構成をチェーンロードするときに簡単に区別できるからです。 Arch Wiki で他のディストリビューションのサンプルを見つけることができます。それを超えたい場合は GRUBマニュアル を読むことは本当に価値があります。

構成ブロックに戻ると、ISOが/efi/boot/ubuntu-14.04.2-desktop-AMD64.isoとして参照されていることが明らかであるため、ISOを\EFI\BOOT\にコピーし、構成内のubuntu-14.04.2-desktop-AMD64.isoをISOの実際のファイル名に置き換えます。 。

loopback loop $isofileは、Linuxカーネルを直接起動できるループバックデバイスにISOファイルをロードする行です。これは、EFI GRUBイメージにループバックモジュールが含まれているため可能です。 (どのモジュールを含めるのが妥当かを判断するのに少しの試行錯誤が必要でした。エラーメッセージは表示されないはずですが、まだ完全ではありません。)カーネルについて言えば、toram 、異なる言語のパラメータ(例locale=de_DE bootkbd=de)および例のように:persistent

2.3。永続性を追加する

ライブUSBで永続化のためにパーティションを使用するにはどうすればよいですか? または、casper-rwファイルを作成して、それをルートに配置することができます。 USBドライブ。

dd if=/dev/zero of=casper-rw bs=1M count=4094
mkfs.ext4 -m 0 casper-rw

絶対最大値をテストしていませんが、4094〜4096 MBの間にあるはずです。より多くのスペースを使用する場合は、パーティションを使用します。 (ルート)へのすべての変更は、ファイルを削除する場合でも、オーバーレイファイルシステムの変更であることに注意してください。

2.4。整合性の確認

次の質問に対する回答を見て、USBドライブのLive ISOコンテンツが初期状態であることを確認する必要があります。

2.5。 UEFIセキュアブート

Windows 10マシンではセキュアブートが必須になります。このセットアップにセキュアブート機能を追加するには、Linux FoundationのPreLoaderをご覧になることをお勧めします。 付属のHashToolのメニューを示すASCIIアート です。


おめでとうございます、あなたは今UEFIブートをマスターしたので、もう恐れることはないでしょう。

133
LiveWireBT

ISOファイルからFAT32に抽出する

Ubuntu 64ビットデスクトップISOファイルのコンテンツをFAT32ファイルシステムとブートフラグを持つパーティションに抽出すると、UEFIモードでのみ起動するライブドライブを作成するという仕事ができます。ここでは、「ISOメソッドからファイルをコピーする」と呼ばれます(受け入れられた回答で)。

UEFIまたはBIOSモードで実行されているかどうかをテストします

しかし、UEFIまたはBIOSモードで起動された場合、実行中のUbuntuシステム(ライブおよびインストール済み)でテストするのは簡単です。このコマンドラインを実行し、

test -d /sys/firmware/efi && echo efi || echo bios

これにより、両方のブートモードで使用できるライブシステムを簡単に使用できるようになります。これも利点です。

メソッドの詳細な説明と説明については、次のリンクも参照してください。

help.ubuntu.com/community/Installation/iso2usb

help.ubuntu.com/community/Installation/iso2usb/diy

3
sudodus

ddを使用するとうまくいきましたが、何らかの理由でGUIバージョンが機能しませんでした。そのため、最初に ddの進行状況を監視 にしたい場合があります。別のオプションはSIGUSR1オプションを使用してddをトリガーし、定期的に進捗を報告しますが、これはpv

次に:

Sudo dd if=path/to/image/file | pv | Sudo dd of=/dev/device_you_want_to_use

/dev/device_you_want_to_useは通常/dev/sdbですが、dfで確認してください!)

2
sup