DragonFly BSDでjailを構築してみます。
ソースツリーの取得
jailを作成するのには、ソースツリーが必要です。 ソースツリーを取得していない場合は、次の手順でインストールしてください。
# cd /usr
# make src-create
エラーが出る場合は、カーネル再構築を参照してください。
また、buildworldを一度もしていないなら、以下のコマンドを実行してください。
# cd /usr/src
# make buildworld KERNCONF=SIMPLE
KERNCONF=の右辺には、カーネルコンフィグファイルを指定します。これについても、カーネル再構築を参照してください。 buildworldにはそれなりの時間がかかります。気長に待ってください。
buildworldが完了すれば、jailを始める準備が整いました。
jailツリーの構築
では、jail環境を作成しましょう。 以下の例では/usr/jail/happyにjail環境を作成しています。 それ以外の場所に作成したいのであれば、一行目のsetenvで任意のディレクトリを指定してください。
# setenv D /usr/jail/happy
# mkdir -p $D
# cd /usr/src
# make installworld DESTDIR=$D
# cd etc
# make distribution DESTDIR=$D -DNO_MAKEDEV_RUN
# cd $D
# ln -sf dev/null boot/kernel
これで、jail環境が/usr/jail/happyに構築されました。 ですが、jailを正常に動かすにはいくつかの設定が必要です。