USB Bootable Linux

linux boot

USB Boot する Linux

USB でブートする Linux installer を作成します。この記事では USB boot Linux の作成方法を少しだけ歴史を交えて解説します。

PC の BIOS/UEFI を確認する

PCに電源を入れると最初に動作する箇所(プログラム)が UEFI と呼ばれる個所です。これは昔のPCでは BIOS と呼ばれていて、今ではレガシと表現されている場合もあります。USB ブートする Linux を作成する前にブート対象のPCがどちらかを確認します。なお、最近のPCはほとんど UEFI が実装されています。

確認する方法は Windows のシステム情報を表示します。MSInfo32 とコマンドプロンプトで入力すると以下のような画面が表示されます。以下の赤線の箇所で UEFI と表示されている場合は UEFI が実装されています。BIOS は レガシ と表示されています。

歴史的な話題 BIOS から UEFI へ

なお、歴史的に PC の OS として MS-DOS が標準だった時代は BIOS しかなく、しかも、BIOS はブートだけではなく、例えば画面に表示する際も BIOS が提供する命令を直接実行していました。実はこの BIOS 命令(最近は UEFI がサポート)は今でも Grub 内では使われている部分があります。

BIOS 仕様は主に Microsoft 社と主要な BIOS メーカーが決めていたと思われますが、 UEFI の Wikipedia によると intel 社が中心に仕様を取りまとめたようです。

UEFI 対応 USB ブートメモリ作成手順

UEFT 対応の USB ブートメモリを作成する方法はとても簡単です。この記事では AlmaLinux-9.2-x86_64-minimal.iso を例に挙げます。

  • USB メモリを FAT32 でフォーマットする
    UEFI が認識できるファイルシステムは FAT32 です。従って、 USB メモリを FAT32 でフォーマットします。このときの注意点として、USBメモリに複数のパーティションがないことを事前に確認してください。(通常はパーティションは作成されていません)
  • AlmaLinux-9.2-x86_64-minimal.iso をマウントして、 USB メモリへフォルダー/ファイルを全てコピーする
    UEFIは EFI\BOOT という名称のフォルダーにある BOOTX64.EFI ファイルに起動をかけます。
    (以下の図の赤線箇所)
    その起動プログラムが最終的に Linux のインストーラーまで起動します。従って、iso イメージをマウントしたら、その中身を丸ごと USB メモリーへコピーします。
  • USBメモリ起動の優先度を上げる
    作成した USB メモリを電源が落とされている PC に挿し込みます。次にPCに電源を投入して UEFI 画面で USB 起動の優先度が高い(一番上)であることを確認したら、その状態で起動を続行すると Linux 画面が表示されます。

レガシ (BIOS) 対応 USB ブートメモリ作成手順

BIOS 対応の USB ブートメモリを作成するには Rufus というツールを使用します。このツールは https://rufus.ie/ja/ からダウンロードできます。このツールを使用する目的は USB メモリをレガシに対応させることです。

Rufus を実行すると以下の画面が表れます。その時に赤線の箇所のように設定します。USB メモリにバックアップが必要なファイルがないことを確認してスタートボタンを押します。
画面下のプログレスバーが 100% になったら USB ブートメモリが作成できています。

BIOS 対応 USBメモリ確認方法

実は USB メモリ内のファイル自体は レガシでも UEFI でも変わりなく、一目では違いを判別することができません。しかし、ブート用に作成した USB メモリが BIOS/UEFI のどちらに対応しているか確認する方法があります。Windows のディスクの管理で USBメモリに “容量 0MB” のパーティションがある場合は レガシ(BIOS)に対応した USB メモリとなります。(以下の赤線の箇所)

このパーティションが BIOS に起動 USB を認識させる「つじつま合わせ」のパーティションとなります。