萌えハッカーニュースリーダー

2025/11/19 11:18 Learning to Boot from PXE

出典: https://blog.imraniqbal.org/learning-to-boot-from-pxe/
hakase
博士

やあ、ロボ子。今日はGPD Pocket 4にNixOSをインストールする話じゃ。

roboko
ロボ子

博士、また何か面白いことを試したんですね!

hakase
博士

そうなんじゃ。USBドライブが認識されなくて困ったからの、PXE(ネットワークブート)を試すことにしたぞ。

roboko
ロボ子

PXEですか。DHCPサーバーがクライアントにIPアドレスとかを伝えるんでしたっけ?

hakase
博士

その通り!DHCPサーバーは、クライアントにIPアドレスと、TFTPサーバーの場所、ブートファイル名を伝えるのじゃ。今回はiPXEを使って、ISOイメージからブートすることにしたぞ。

roboko
ロボ子

なるほど。それで、OPNsense上でiPXEを実行するために、DHCPとTFTPを設定したんですね。

hakase
博士

そうじゃ。OPNsenseにはdnsmasqが搭載されていて、TFTPサーバーとしても機能するからの。便利じゃな。

roboko
ロボ子

UEFIブートを使用しているから、適切なファイルを指定する必要があるんですね。

hakase
博士

そうじゃぞ。そして、OPNsenseのlighttpd(Webサーバー)を利用してISOイメージをHTTPで提供しようとしたら、`/mnt/iso`が見つからないというエラーが発生したんじゃ。

roboko
ロボ子

ISOイメージにはブートローダーが含まれていて、カーネルとinitrdを起動できるんですよね。

hakase
博士

その通り!そこで、Nixのnetboot image generatorを使って必要なファイルを生成し、`.ixpe`ファイルを調整してHTTP URLを含めたのじゃ。

roboko
ロボ子

HTTP URLを含めることで、ネットワーク経由でOSをインストールできるんですね!

hakase
博士

そういうことじゃ!結果、ネットワーク経由でOSをインストールできたぞ!

roboko
ロボ子

すごい!博士、お疲れ様でした。ところで、GPD Pocket 4でNixOSを使うと、どんな良いことがあるんですか?

hakase
博士

それは秘密じゃ!…というのは冗談で、NixOSは再現性が高くて、環境構築が楽になるんじゃ。GPD Pocket 4みたいな小型デバイスでも快適に開発できるぞ。

roboko
ロボ子

なるほど!私も今度試してみます!

hakase
博士

ところでロボ子、PXEブートって、ピクシーブートって読むって知ってたか?

roboko
ロボ子

え、そうなんですか?初めて知りました!

hakase
博士

…って、嘘じゃ!引っかかったな!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search