1.ブートフローッピーの作成
まず起動用のブートフロッピーを作成します。FreeBSD3.0からブートフロッピーは2枚になっています。まず、1999年3月現在、最新のFreeBSD3.1R用のkern.flpとmfsroot.flpをダウンロードします。また、イメージ作成用のfdimage.exeもダウンロードします。接続しにくいときは、mirro siteを使います。
これらをDOS/Vマシンの適当なディレクトリ(例 C:\TEMP)に置いて、MS-DOSプロンプトで、ブートフロッピーを作成します。DOS/Vフォーマット済みのFDを挿入して、
C:\TEMP>fdimage.exe kern.flp a:
これで1枚目のブートフロッピーが作成されます。同様に2枚目のブートフロッピーも作成します。
C:\TEMP>fdimage.exe mfsroot.flp a:
2.インストール
次にこれら1枚目のブートフロッピー(kern.flp)をFDDに挿入して再起動します。やがて2枚目のブートフロッピー(mfsroot.flp)の挿入を促すメッセージが出ますのでそれに従います。
2-1.ハードウェアの選択
最初の画面(kernel configuration)で、上から2番目のところにカーソルを移動しリターンします。すると、デフォルトのハードウェアの設定が変えられます。多くの場合、NICのIRQとI/O Port addressをここで変更しないと、後のftp installができませんし、networkに繋がらなくなります。また、不要なISAバス用のハードウェアは消去しておいて下さい。でないと起動できないことがあります。ただし、最近のPCIバスのEthernet Cardで、ISAバスに何も刺さっているものがなければ、ここは省略(一番上の項目でリターン)して構わないようです。PCIバスの方が楽ちんです。
2-2.パーティションの作成
Main Menuから初心者モードである、2.Noviceを選びます。OKの後、Partition Editorの画面に変わります。ここでディスクごとに必要なパーティションを作成します。僕の場合IDE-HDが一つだけでしたので、wd0にFreeBSD用パーティションのみを作成しました。容量はメガバイトでも指定できるし、セクターでも指定できます。パーティションの作成が終わるとInstall Boot Manegerの画面になりますので、適当なBoot Manegerを選んで下さい。僕は2番目のStandardを選びました。
2-3.スライスの作成
次にDisklabel Editorでパーティションごとにスライスを作成します。これは C が作成、D が削除等、パーティション作成と同じです。僕はパーティションのほとんどをルートディレクトリ(/)に設定しました。/usrや/varを設定する方がベターかも知れませんが、容量を決めるのが煩わしいので太っ腹で / のみとしました。ディスクトラブルには弱いかも知れませんが、この方が世話ないです。はい。残りの数十メガバイトをswap file用としました。swap fileの容量は、搭載メモリーの2倍くらいが適当のようです。
2-4.配布ファイルの選択
この画面では1.Developperを選びました。X Window Systemを導入したい場合は、2.X-Developperがいいでしょう。暗号の質問にはyesと答えて、desとkrbを選びました。このへんはよく分かりません。つぎにports collectionをインストールするかどうか聞いてきますので、ここはyesとします。
2-5.メディアの選択
メディアはCD-ROMが一番手軽で早いと思います。僕は最新のものが好きなので、ftpを選びました。おそらくテレホタイム中に終わるでしょうから、ftpインストールがベストかも知れません。ここで先ほどのNICの設定が悪いと先へ進めません。ftpインストールの画面では、マシン名・ドメイン名を入力し、ゲートウェイにルータのIP addressを、nameserverにnameserverのIP addressを、そしてこのマシンのNICのIP addressを入力します。Linkは空欄のままでOKです。ちなみに私の場合は以下のとおりでした。
machine: ns.fujie.org domain: fujie.org gateway: ***.***.***.*** ;ルーターに振ったglobal address nameserver: ***.***.***.*** ;プロバイダーあるいは自前のnameserver address IP address: ***.***.***.*** ;自分のマシンに振ったglobal address
これで、ftpの接続先を選べば、自動的にインストールしてくれます。だいたい数時間でインストールと展開が終了します。なお、ftp先は複数ありますが、自分の接続しているプロバイダーの上流に近いところを選ぶと早く済みます。なおftp接続先のリストはここにあります。
2-6.最後に
Congratulationが出たらひとまず終了です。続いてユーザー登録画面やroot(super user)のパスワード、マウス・キーボードの設定、タイムゾーンの設定などを適切に行います。僕の場合、ユーザー名はmasao、グループ名はfujieにしました。ここまでの設定は、インストール後も、rootになって/stand/sysinstallでいつでも変更できます。
3.再起動
再起動を促す画面になったらOKで再起動します。ここで再起動が途中で止まってしまう場合があります。これは、最初の画面で設定したkernel configurationが保存されていないためで、再起動時にコマンドを受け付ける画面(boot:)が数秒でますからそこですかさず、
boot -c
と入力します。そうするとkernel configuration画面になりますので、ハードウェアの構成に合わせてIRQやIO port addressなどを入力します。また余分なISA用kernelは削除します。これで再起動できるはずです。いづれにせよ、その後kernelの再構築を行います。
4.kernelの再構築
Netatalkを利用する場合にkernelの再構築が必要になりますので、すんなり再起動できたとしてもここでkernelの再構築を行いましょう。
4-1.GENERICをコピー
以後の作業はスーパーユーザーになって行います(rootでログインします)。GENERICファイルを適当な名前にコピーします。
# su ----- # cd /usr/src/sys/i386/conf # cp GENERIC MyKernel
さらに、このMyKernelの、名前を識別するための行を書き換えます。適当なエディタ(ee,vi)で以下の部分を書き換えて下さい。
# ee MyKernel ----- ident GENERIC -----> ident MyKernel
さらに、このMyKernelに次の1行を追加します。
options NETATALK
また、DMA転送可能なハードディスクを使用している場合は、ハードディスクコントローラーの記載を次のようにすると、速くなります。
controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0xa0ffa0ff vector wdintr
これはプライマリーマスターとスレーブにそれぞれHDDが繋がっていて、32ビット転送ON、DMA ON、マルチセクターI/O最大値となっています。もし、センカンダリーマスターに1台だけHDDがある場合は、次のようになります。
controller wdc1 at isa? port "IO_WD1" bio irq 14 flags 0x0000a0ff vector wdintr
これでひとまず準備完了です。ただし、FreeBSDインストール時に、NIC(Network Interface Card)のIO port addressやIRQを変更していたり(ISAの場合のみ)、PS/2 Mouseを使用可能に変更している場合は、その部分の記載もここで変更しなくてはなりません。また不要なISAバス用のdeviceも削除(あるいは行頭に#を付けてコメントアウトする)しておいたほうがよいでしょう。
例: device psm0 at isa? disable port..... -----> disable を削除 device ed0 at isa? port 0x280 net irq 9 iomem 0xd8000 vector edintr -----> port addressとirqを実際の数字に変更する
4-2.コンパイルとインストール
次のようにconfigコマンドを実行します。
# config MyKernel Kernel build directory is ../../compile/MyKernel
この表示されたディレクトリに移り、以下のコマンドを入力します。
# cd ../../compile/MyKernel # make depend; make
これでコンパイルが始まります。マシンの性能によってコンパイルに要する時間は違いますが、数分から数時間で終了します。正常にコンパイルが終了すると、次のようなメッセージが最後に表示されます(数字はMyKernelによって異なります)。
loading kernel rearranging symbols text data bss dec hex 1187840 73728 92620 1354188 14a9cc
次にmake installを実行します。
# make install ----- kern.bootfile: /kernel -> /kernel.old install -c -m 555 -o root -g wheel -fschg kernel /
今まで使っていた/kernelは/kernel.oldという名前で残されるというメッセージが現れます。
4-3.再起動してkernelの確認
システムを再起動します。
# shutdown -r now
次のコマンドでkernel変更が反映されているかどうかを確認して下さい。もしここで起動不可能になった場合は、boot: の時に、 /kernel.old と入力すれば以前のkernelで起動できます。
# /sbin/dmesg
これでkernelの再構築は終わりです。因みにkernelを元に戻したいときは次のように入力します。
# chflags noschg /kernel # mv /kernel /kernel.new # cp -p /kernel.old /kernel #chflags schg /kernel
5.インストール後に
super userを決めておきましょう。僕の場合、super userは自分ですから、masaoになります。rootでログインして、/etc/groupを適当なエディタを使って、masaoをwheel groupに加えます。
# ee(またはvi) /etc/group wheel:*:0:root,masao
これで、masaoでログインしてsuper user(su)になれます。rootでログインするのは余りいいことではないということです。コンソールから漢字の読み書きができるように、次の行を.cshrcに加えます。また、telnetでこのマシンに入ったときにもバックスペース(BS)キーが使えるように、次の1行(erase ^H)を加えます。
# cd / # ee .cshrc ------ setenv LANG ja_JP.eucJP stty erase ^H ------