1−1.カーネルコンパイル
GENERICカーネルの設定ファイルをコピーして使う。
elis# cd /sys/i386/conf
elis# cp GENERIC ELIS
いらないデバイスの定義とかをコメントアウトして、IPFWの為の記述を追加する。
/sys/i386/conf/ELIS
# IPFW support
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=500
新しい方法もあるらしいけど、従来通りにconfigを使う。
elis# config ELIS
親切なconfigさんはコンパイルする場所を教えてくれる上に、
make dependを忘れるなと言ってくれるのでその通りにする。
elis# cd ../compile/ELIS
elis# make cleandepend; make depend
elis# make; make install
で再起動すると新しいカーネルで起動するはず。
一応起動に失敗した時の為にGENERICカーネルでの起動方法、
最初のメニューで6を選択して以下のコマンドを入力。
OK boot kernel.old
正常に起動した場合はIPFWが有効になってるので、
設定するまでは全部のパケットを通しておく。
elis# ipfw add allow ip from any to any
構築作業中に再起動しても大丈夫なようにrc.confにも書いとく。
/etc/rc.conf
firewall_enable="YES"
firewall_type="open"
1−2.最新のportsを取得
インストールCDに入ってるportsをあらかじめインストールしておくこと。
最新のportsを取得する為に昔はpackageからcvsupを入れて使ったものだが、
最近のFreeBSDにはcsupというものが最初から入ってるらしいのでそっちを使う。
まずサンプルの設定ファイルをコピーする。
elis# cd ~
elis# cp /usr/share/examples/cvsup/ports-supfile .
設定といってもサーバ名を編集するだけ。
/root/ports-supfile
cvsup.jp.FreeBSD.org
設定ファイルを引数として実行。
elis# csup ports-supfile
1−3.作業用ツールのインストール
portsが最新になったところで、とりあえず入ってると便利なツールを入れておく。
まずはskillを入れる。プロセス名とかでkillコマンドを実行できる優れもの。
PIDを調べなくて済んだり同じ名前のプロセスを一気にKILLできたりするから便利。
でも誤爆には注意。
elis# cd /usr/ports/sysutils/skill
elis# make install
ソースの取得から展開、コンパイル、インストールまで勝手にやってくれる。portsすげえ。
終わったらmake cleanすると作業ファイルを消してくれる。まあ別に放置でもいいけど。
次にja-lsを入れる。標準のlsは日本語に対応してないから。
elis# cd /usr/ports/japanese/jls
elis# make install
ついでにnkfを入れる。言わずと知れた漢字コード変換フィルタ。
別に使う予定ないけど、基本なのでとりあえず入れとく。
elis# cd /usr/ports/japanese/nkf
elis# make install
portsすげえ。
でもjlsは5.1-RELEASEから導入されたjailのjlsコマンドと名前被ってる。
/usr/local/bin/jlsにあるから適当な名前でAliasするか別名でリンク張っておくと便利かも。
portsに限らずインストールが終わったら一旦ログアウトするのを忘れずに。
何故かというと、パスの実行ファイル一覧はシェルの起動時にしか取得しないから。