今回のアップグレードは実は二回目のアップグレートへのトライだったのでした。一回目は 2.1.7-RELEASE にアップグレードインストーしましたが、私の PC/AT は AHA-2940 を使用している SCSI 構成の PC/AT なのでした。

 2.1.7-RELEASE と 2.2.1-RELEASE には ADAPTIC AHA-2940 SCSI カードに対応するデバドラ、 ahc0 aic0 にバグが有り、SCSI HDD に正しくアクセスしてくれません。アップグレードインストールはやめた方が良いです。私の FreeBSD の内容は見事にぶっ飛んでしまいました(g_g)

 さて、今回はまんを持して待ち望んだバージョン。2.1.7.1-R をアップグレードしてみましょう。現在、SCSI カード AHA-2940 を使用しない PC の場合の、一番安定している FreeBSD のバージョンです。


データのバックアップ
 必要なディレクトリのバックアップを取って、DOS パーティションに退避しましょう。

   /etc
   /home/自分のディレクトリ

 この他に自分でインストールしたソース郡のディレクトリ。更には var 等を保存しましょう。

パーティション情報の保存
 この情報は必要です。mount コマンドと df コマンドの結果は紙に書いて取っておきましょう。
----------------
# mount
/dev/sd0a on / (local)
/dev/sd0s1 on /dos (local, read-only)
/dev/sd0s2e on /home (local)
/dev/sd1s1e on /usr (local)
/dev/sd1s1f on /var (local)
procfs on /proc (local)
#
# df
Filesystem  512-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a       395902    44564   319666    12%    /
/dev/sd0s1      818816   628864   189952    77%    /dos
/dev/sd0s2e     864302   453448   341710    57%    /home
/dev/sd1s1e    1390622  1070274   209100    84%    /usr
/dev/sd1s1f     656026   217982   385562    36%    /var
procfs               8        8        0   100%    /proc
----------------
 この情報はどのデバイス(パーティション)にどのディレクトリがマウントされているかが必要になります。

いよいよインストール
 特に気にする事は無いです。2.1.7.1-RELEASE 用の boot.flp を DOS で作成してブートすればいつもの画面が出ます。

 ディクスラベルエディタの所で上記の情報を元に「マウント」します。この時、余計な事はしないで「マウント」だけします。間違えたりしたら潰す事になりますよ・・。

 ここまで来れば一段落。後は、普通のインストールと同様の行程を辿れば OK です。ただここまでは失敗してもまだだいじょぶ。commit されない限りディスクの中身はつぶれません。失敗したと思ったらすかさず reset ボタンを・・(^^;;。

さてっ!!ブート。ありゃりゃ(^^;
 / パーティにみょーに沢山のファイルが有る・・。あれれぇ? /etc でアップデートされたファイルが全て / パーティにバックアップされてしまいました。このファイル郡の削除が大変。diff して、ls -l して差分を調べて削除して奇麗にしましょう(^^;;。

 一応、/etc/passwd,fstab 等は新しいのを利用した方が安全でしょう。その他、自分の判断で更新してください;-)。後、/dev は殆んど全て置き換わります。後から自分で MAKEDEV したデバイスはもう一度手で作って上げた方が良いでしょう。

/usr/src を make;make install して全部のバージョンアップが完了
・やはり基本は /usr/src/sys でしょう。こいつで kernel を再構築します。 2.1.5-RELEASE のconfigfile が殆んど使えます。
・/usr/src/usr.sbin/ppp でエラーが出ると思います。2.1.5 のソースを一応保存して起きましょう。
・/usr/src/usr.bin/tn3270 でエラーが出ます。私は Makefile からこの行を消しました(^^;。古いバージョンのが動いていると思います。
・一番は/usr/src/include からインストールした方が良いと思います。
・/usr/src/etc は私にはインストールする勇気は有りませんでした・・(^^;

 ふーー。以上でバージョンアップインストールは完了っ!!