FreeBSDをPXE経由でインストールする

対象プラットフォーム: FreeBSD 10.x
(下記手順を2017/07/01にFreeBSD 10.3-RELEASEで確認済み)


はじめに

モバイルノートやネットブックなどの小型PCでは、FDDやDVD/CD-ROMドライブなど、FreeBSDのインストールに必要な装置を備えていない場合があります。
こういった場合でも、そのPCにPXE(Preboot eXecution Environmentの略、「ピクシー」と読む)と呼ばれるネットワークからブートする機能があれば、ネットワーク経由でFreeBSDをインストールすることが可能です。

このページでは、FreeBSDをPXEを利用してインストールする方法を説明します。

尚、FreeBSDをPXEを利用してインストールするには、

・ PXEのクライアント(FreeBSDをインストールするマシン)が接続されているネットワーク上でDHCPが稼動しており、そのDHCPがそのクライアントに対して正しい情報を提供すること
・ PXEのブートイメージの配信サーバにおいて、tftpサービスが動作していること
・ PXEのブートイメージの配信サーバにおいて、NFSサーバが動作していること

が必須になります。

tftpサーバとDHCPサーバの設定

まず初めに、tftpサーバとDHCPサーバの設定を行います。

PXEクライアントは、DHCPによってブートローダであるpxebootの取得先を知り、そのファイルをtftpで取得しようとするため、配信サーバでtftpd/DHCPが正しく設定されている必要があります。
これらの設定の詳細については、「PXEブートイメージ配信環境を構築する (tftp/DHCPサーバ)」をご参照ください。

NFSサービスを有効にする

PXEクライアントがtftpで取得したpxebootを実行すると、pxebootはNFSを利用してサーバ上のファイルシステムをマウントし、そこからkernel等のファイルを読み込んでインストールを試みます。
このため、PXEブートイメージを配信するサーバにおいて、NFSサーバのサービスが動作している必要があります。

NFSサーバの構築方法については、「NFSサーバを構築する (nfsd)」をご参照頂き、「/pxeroot」がNFSでマウントできるよう設定してください。

起動に必要なファイルの配置

各種サーバの設定が完了したら、次にFreeBSDのインストールに必要なファイルを、DVD/CD-ROMなどからコピーします。

DVD/CD-ROMのメディアがない場合は、ISOイメージをDVD/CD-ROMとしてマウントして必要なファイルをコピーすることも可能です。
ISOイメージをDVD/CD-ROMとしてマウントする方法については、「ISOイメージをマウントする(FreeBSD 6.X/5.X)」をご参照ください。

pxebootの配置

PXEのブートイメージである「pxeboot」をtftpで取得可能な場所に配置します。

PXEブートイメージのtftp配下へのコピー
$ cp -p /cdrom/boot/pxeboot /pxeboot

配布ファイルの配置

次に、インストール用の配布ファイル一式を配置します。
これらのファイルは、pxebootと違い、pxebootが読み込まれた後、NFSによって取得されます。

配布ファイル一式の「/pxeroot」へのコピー
$ mkdir /pxeroot
$ cp -Rp /cdrom/* /pxeroot

「/pxeroot/etc/fstab」の編集

次に、インストール時にnfsでマウントした配布ファイル一式が参照されるように、「/pxeroot/etc/fstab」の既存の記述を以下の通りコメントアウトします。

「/pxeroot/etc/fstab」の編集(編集前)
/dev/iso9660/10_3_RELEASE_I386_DVD / cd9660 ro 0 0

「/pxeroot/etc/fstab」の編集(編集後)
# /dev/iso9660/10_3_RELEASE_I386_DVD / cd9660 ro 0 0

PXEから起動されたシステムは、DVDを「/」に再マウントしようとしますが、すでに配布ファイル一式はnfsで「/」にマウントされているため、上記の修正でこれを抑止します。

PXEクライアント側の設定

あとは、PXEクライアント側の設定を行うだけです。
PXEクライアントの設定は、BIOS等で行うのが一般的です、設定については、各ハードウェアのマニュアルをご参照ください。

稀にうまくブートしなかったり、FreeBSDのブートシーケンスの途中でハングアップする場合があります。
その際には、一回PCの電源を完全に落としてから、再度ブートさせる(コールドブート)とうまくいくようですので、お試しください。

変更履歴

2017/07/01

・FreeBSD 10.3-RELEASEでの動作確認を元に記事を一部修正。

2017/06/28

・FreeBSD 8.4-RELEASEでの動作確認を元に記事を一部修正。

2014/11/14

・文章の内容全般を見直し再構成。


あなたの探し物は見つかりましたか?
まさにこれだ
参考になった
ちょっと違う
これじゃない

何かメッセージがあればお願いします

このメッセージを非公開にする

ご注意

・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。


まだ評価がありません

表示できるメッセージはありません。


目次に戻る
image