「Netboot」の版間の差分
(→ipxe.pxe を使う: 英語版と同期) |
(→UEFI: USB フラッシュドライブから起動するを翻訳して追加) |
||
(2人の利用者による、間の4版が非表示) | |||
1行目: | 1行目: | ||
[[Category:Arch の入手とインストール]] |
[[Category:Arch の入手とインストール]] |
||
+ | [[Category:Arch プロジェクト]] |
||
[[en:Netboot]] |
[[en:Netboot]] |
||
+ | [[lt:Netboot]] |
||
Netboot イメージはシステムの起動と同時に Arch Linux の最新リリースをダウンロードすることができる小さなイメージです (1MB 未満)。自動的に最新リリースが利用できるようになるため、Netboot イメージを更新する必要はありません。Netboot イメージは [https://www.archlinux.org/releng/netboot/ Arch Linux ウェブサイト] からダウンロードすることができます。 |
Netboot イメージはシステムの起動と同時に Arch Linux の最新リリースをダウンロードすることができる小さなイメージです (1MB 未満)。自動的に最新リリースが利用できるようになるため、Netboot イメージを更新する必要はありません。Netboot イメージは [https://www.archlinux.org/releng/netboot/ Arch Linux ウェブサイト] からダウンロードすることができます。 |
||
+ | |||
+ | {{Note|ライブシステムを格納し実行するため、1.5GiB 以上 (おそらく) の十分なメモリが必要です。メモリが不足していると起動時カーネルパニックに陥るかもしれません。}} |
||
== BIOS == |
== BIOS == |
||
11行目: | 15行目: | ||
{{ic|ipxe.lkrn}} イメージは Linux カーネルのように起動できます。([[GRUB]] や [[Syslinux]] など) Linux の[[ブートローダー]]を使ってハードドライブや CD もしくは USB ドライブからロードすることが可能です。 |
{{ic|ipxe.lkrn}} イメージは Linux カーネルのように起動できます。([[GRUB]] や [[Syslinux]] など) Linux の[[ブートローダー]]を使ってハードドライブや CD もしくは USB ドライブからロードすることが可能です。 |
||
+ | [[Syslinux]] の {{ic|ipxe.lkrn}} を起動できる USB ドライブを作成するには次のようにします: |
||
− | 以下のコマンドを実行することで [[QEMU]] でイメージを試すことができます: |
||
+ | * [[lsblk]] を使って当該トライブを探します。ここでは {{ic|/dev/sdc}} にあるものとします。 |
||
− | $ qemu-system-x86_64 -enable-kvm -m 1G -kernel ipxe.lkrn |
||
+ | * デバイスに [[Master Boot Record|MBR パーティションテーブル]]を作成します。 |
||
+ | * [[FAT32]] でフォーマットされたプライマリパーティションを作成し、アクティブに設定します。 |
||
+ | * パーティションを[[マウント]]して {{ic|boot/syslinux}} ディレクトリを作成します。{{ic|ipxe.lkrn}} を {{ic|boot}} にコピーします。 |
||
+ | |||
+ | # mount /dev/sdc /mnt |
||
+ | # mkdir -p /mnt/boot/syslinux |
||
+ | # cp ipxe.lkrn /mnt/boot |
||
+ | |||
+ | * Syslinux の設定を作成します。 |
||
+ | |||
+ | {{hc|/mnt/boot/syslinux/syslinux.cfg|2= |
||
+ | DEFAULT arch_netboot |
||
+ | SAY Booting Arch over the network. |
||
+ | LABEL arch_netboot |
||
+ | KERNEL /boot/ipxe.lkrn |
||
+ | }} |
||
+ | |||
+ | * パーティションをアンマウントします。 |
||
+ | |||
+ | # umount /mnt |
||
+ | |||
+ | * 最後に、Syslinux MBR と Syslinux 本体をドライブにインストールします。 |
||
+ | |||
+ | # dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdc |
||
+ | # syslinux --directory /boot/syslinux/ --install /dev/sdc1 |
||
+ | |||
+ | あるいは、以下のコマンドを実行することで [[QEMU]] でイメージを試すことができます: |
||
+ | |||
+ | $ qemu-system-x86_64 -enable-kvm -m 2G -kernel ipxe.lkrn |
||
=== ipxe.pxe を使う === |
=== ipxe.pxe を使う === |
||
43行目: | 76行目: | ||
# efibootmgr --create --disk /dev/sda --part 1 --loader /EFI/arch_netboot/arch_netboot.efi --label "Arch Linux Netboot" |
# efibootmgr --create --disk /dev/sda --part 1 --loader /EFI/arch_netboot/arch_netboot.efi --label "Arch Linux Netboot" |
||
+ | |||
+ | === USB フラッシュドライブから起動する === |
||
+ | |||
+ | USB フラッシュドライブから Netboot EFI バイナリをブートする場合は、[[FAT]] でフォーマットされたパーティション上のデフォルト/フォールバックブートパス ({{ic|/EFI/BOOT/BOOTx64.EFI}}) にコピーします。その後、イメージは UEFI システムによって自動的にロードされます。 |
||
+ | |||
+ | たとえば、フラッシュドライブとして {{ic|/dev/sd''X''}} を想定し、次のように USB フラッシュドライブを準備します: |
||
+ | |||
+ | # まず、{{ic|/dev/sd''X''}} に[[パーティションテーブル]]を作成し、デバイス上に[[パーティション]] ({{ic|/dev/sd''Xn''}}) を作成します。{{Tip|最も互換性のあるセットアップは、タイプ {{ic|0c}} "w95 fat32 (lba)" の単一のアクティブ (ブート可能な) プライマリパーティションを持つ MBR パーティション テーブルを使用することです。[https://lists.gnu.org/archive/html/grub-devel/2019-05/msg00063.html]}} |
||
+ | # パーティションを [[FAT32]] にフォーマットします: {{bc|# mkfs.fat -F 32 /dev/sd''Xn''}} |
||
+ | # ファイルシステムを[[マウント]]する: マウントする: {{bc|# mount /dev/sd''Xn'' /mnt}} |
||
+ | # マウントしたファイルシステムに {{ic|/EFI/BOOT}} ディレクトリを作成する: {{bc|# mkdir /mnt/EFI /mnt/EFI/BOOT}} |
||
+ | # x64 UEFI のデフォルトブートパスに {{ic|pxe-arch.efi}} をコピーします: {{bc|# cp pxe-arch.efi /mnt/EFI/BOOT/BOOTx64.EFI}} |
||
+ | # ファイルシステムを[[ファイルシステム#ファイルシステムのアンマウント|アンマウント]]します。 |
||
+ | |||
+ | {{Note|起動するには[[Unified Extensible Firmware Interface/セキュアブート#セキュアブートを無効化する|セキュアブートを無効にする]]必要があります。カスタムキーを使用して Netboot EFI バイナリに署名した場合でも、ミラーからダウンロードされたカーネルは署名されません。}} |
2024年1月8日 (月) 05:09時点における最新版
Netboot イメージはシステムの起動と同時に Arch Linux の最新リリースをダウンロードすることができる小さなイメージです (1MB 未満)。自動的に最新リリースが利用できるようになるため、Netboot イメージを更新する必要はありません。Netboot イメージは Arch Linux ウェブサイト からダウンロードすることができます。
BIOS
BIOS ベースのコンピュータで Netboot を使うには、ipxe.lkrn
または ipxe.pxe
イメージが必要です。
ipxe.lkrn を使う
ipxe.lkrn
イメージは Linux カーネルのように起動できます。(GRUB や Syslinux など) Linux のブートローダーを使ってハードドライブや CD もしくは USB ドライブからロードすることが可能です。
Syslinux の ipxe.lkrn
を起動できる USB ドライブを作成するには次のようにします:
- lsblk を使って当該トライブを探します。ここでは
/dev/sdc
にあるものとします。 - デバイスに MBR パーティションテーブルを作成します。
- FAT32 でフォーマットされたプライマリパーティションを作成し、アクティブに設定します。
- パーティションをマウントして
boot/syslinux
ディレクトリを作成します。ipxe.lkrn
をboot
にコピーします。
# mount /dev/sdc /mnt # mkdir -p /mnt/boot/syslinux # cp ipxe.lkrn /mnt/boot
- Syslinux の設定を作成します。
/mnt/boot/syslinux/syslinux.cfg
DEFAULT arch_netboot SAY Booting Arch over the network. LABEL arch_netboot KERNEL /boot/ipxe.lkrn
- パーティションをアンマウントします。
# umount /mnt
- 最後に、Syslinux MBR と Syslinux 本体をドライブにインストールします。
# dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdc # syslinux --directory /boot/syslinux/ --install /dev/sdc1
あるいは、以下のコマンドを実行することで QEMU でイメージを試すことができます:
$ qemu-system-x86_64 -enable-kvm -m 2G -kernel ipxe.lkrn
ipxe.pxe を使う
ipxe.pxe
イメージは PXE イメージです。既存の PXE 環境からチェインロードすることができます。DHCP サーバーを設定することができネットワークから起動したときに常に Arch Linux の Netboot を起動することができます。
それとは別に、Pxelinux のような既存のPXE ローダーからもチェインロードできます。エントリの例:
LABEL arch_netboot_chain COM32 pxechn.c32 APPEND ipxe.a56af4e6a9a9.pxe
この例を動作させるには、pxechn.c32
を pxelinux.0
のあるディレクトリへコピーする必要があります。
UEFI
ipxe.efi
イメージを使うことで UEFI モードで Arch Linux の Netboot を起動できます。64ビット UEFI だけがサポートされています。ipxe.efi
イメージは efibootmgr を使ってブートオプションに追加したり、systemd-boot などのブートマネージャからチェインロードしたり、UEFI シェルから直接起動できます。
efibootmgr でインストール
まず efibootmgr パッケージをインストールしてから UEFI netboot イメージ をダウンロードしてください。
EFI System Partition (ESP) を /boot/efi
にマウントしている場合、以下のようにして移動してください:
# mkdir /boot/efi/EFI/arch_netboot # mv ipxe.*.efi /boot/efi/EFI/arch_netboot/arch_netboot.efi
以下のようにブートエントリを作成することができます:
# efibootmgr --create --disk /dev/sda --part 1 --loader /EFI/arch_netboot/arch_netboot.efi --label "Arch Linux Netboot"
USB フラッシュドライブから起動する
USB フラッシュドライブから Netboot EFI バイナリをブートする場合は、FAT でフォーマットされたパーティション上のデフォルト/フォールバックブートパス (/EFI/BOOT/BOOTx64.EFI
) にコピーします。その後、イメージは UEFI システムによって自動的にロードされます。
たとえば、フラッシュドライブとして /dev/sdX
を想定し、次のように USB フラッシュドライブを準備します:
- まず、
/dev/sdX
にパーティションテーブルを作成し、デバイス上にパーティション (/dev/sdXn
) を作成します。 - パーティションを FAT32 にフォーマットします:
# mkfs.fat -F 32 /dev/sdXn
- ファイルシステムをマウントする: マウントする:
# mount /dev/sdXn /mnt
- マウントしたファイルシステムに
/EFI/BOOT
ディレクトリを作成する:# mkdir /mnt/EFI /mnt/EFI/BOOT
- x64 UEFI のデフォルトブートパスに
pxe-arch.efi
をコピーします:# cp pxe-arch.efi /mnt/EFI/BOOT/BOOTx64.EFI
- ファイルシステムをアンマウントします。