FreeBSD jail環境でportsを共有する

jailごとに別々にportsを持っているとかさばって仕方が無いので共有する。 jail関係3投稿目。基本構築ネットワーク設定ときてこれで終わりかな。

基本的にやることは単純。portsのディレクトリをnullfsでマウントするだけ。 安定性を考慮してreadonlyでマウントする。 /etc/fstabに以下の行を加えて再起動すれば良い。

/usr/ports JAIL環境の/usr/portsへのフルパス nullfs ro 0 0

標準状態だとjail環境の方にはportsディレクトリがなかったので、作成しておくことを忘れずに。 空ディレクトリがないとマウントしてくれないので注意。

このままだとmakeしたときなんかに出る中間ファイルを保存できないので、 作業用領域を作成する。 jail環境下の/etc/make.confを編集する。

WRKDIRPREFIX         = /tmp
DISTDIR              = /var/ports/distfiles
PACKAGES	     = /var/ports/packages
INDEXDIR	     = /var/ports
#jexec PID /bin/sh

したら、上記のディレクトリを作成する。

再起動したらportsを共有してインストールできるようになっているはず。

Written on July 30, 2011