家のメインサーバであるFreeBSD鯖が、オンボードNICのトラブルでネットワークから切断された状態のまま何日過ぎただろうか。だいたいオンボードのNICのトラブルなんてあるもんかいな。チップがPRO100だったので結構重宝していたのだが、認識すれど、ループバックはOKだけど、外部にパケットが出て行かない(HUBは点滅するので恐らくデータが化けてる)状態になってしまったのでどうしようもない。念のためKNOPPIXでBOOTしてみたけどやっぱり症状は一緒で、認識はしているけど通信不可という不可解な現象。もうマシンを入れ替えよう(K6-233MHzは流石に古すぎるっしょ)
ずっとFreeBSD 4.x系で動いてきたのでそのまま惰性で4.x系を使い続けてきた。4.11Rでお終いだったか。5系もそろそろ終わりと言われているし、6.2Rがスタンダードで7系のアナウンスも出ているからな。
幸いIDEなHDDは無事だったので、データは丸々残っているという寸法だ。問題はどうやって新しいマシンに移行させるかだな。もう流石に4.11Rは使えないので6.2Rに鞍替えする計画。場合によってはOpenBSDもありかなと思っていたけれど、まだOpenBSDについては理解が進んでいないので、当分先送りする事にして、FreeBSD 6.2Rで行く事にした。
マシンはやっぱりまたK6だったりする(w CPUはK6-450MHz、MEMは384MBである。富士通のFMVという古いパソコン。なんとなく気に入って二台ゲットしておいたのだが、ブログ用のサーバとおそろいで並べて置くとちょっとだけ嬉しい気がする。
FreeBSD 6.2RのCD用ISOを一つだけDLしてきた。余計なモノは入れないつもりだから、FDブートでもいいんだけど、FDイメージが4つもあるのを見てその気は無くなった。せめて2枚にとどめて欲しいもんだな。もうFDの時代も終わったという事か。その点OpenBSDはFD一枚でBOOT出来てネットワークインストール出来るから凄いぞ。そろそろマジにOpenBSDも覚えないといけないな。
さて、私はサーバ用途ではX-Windowは全く不要なので、マシンがショボイと言う理由もあって普通は見向きもされないらしい最小インストールを実行する。ドキュメント類もインストールされない本当の最小インストールだ。古いマシンでもあっという間にインストールが終わるので心地よい感じがする。 まぁここからがちょっと手がかかるのだが、FreeBSDはSysinstallが使えるからまだ楽ちんな方だと思う。
※例外なく/stand/sysinstallとやって焦ってしまった。こういう細かいところが新しいバージョンでは変わってるんだね。 落とし穴が結構有りそうな気配を感じる。
取り急ぎ必要なのは
- ddclient
- Apache2(とうとう1.3系から移行する決意をした)
- Perl
この位である。あとはまぁ依存関係で勝手に入るんだろうからよしなにという感じである。DebianのAPTと同じでお気楽インストールが有り難い。依存関係で頭を悩ませるのは結構ストレスだったりするから本当にありがたい。
さて課題のデータ移行である。ここで出番はIDE-USB変換コネクターである。1500円位で買ってきたものだが、時々活躍してくれるアイテムだ。電源はAC100Vのコンセントからとり、USBポートに接続すれば、内蔵型IDE-HDDが簡易型USB-HDDに早変わり。むき出しだからHDDの回転音が五月蠅いけどね。
ad0: 6149MB <WDC AC26400R 17.01J17> at ata0-master UDMA33
acd0: CDROM <CD-224E/1.5A> at ata1-master PIO4
Trying to mount root from ufs:/dev/ad0s1a
umass0: vendor 0x05e3 USB TO IDE, rev 2.00/0.33, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <FUJITSU MPB3043ATU 0811> Fixed Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 4125MB (8448300 512 byte sectors: 255H 63S/T 525C)
umass0として認識してくれているから、/dev/da0で探せば見つかるハズ。
# ls /dev | grep da0
da0
da0s1
da0s1a
da0s1b
da0s1c
da0s1e
da0s1f
da0s1g
あたたたた、パーティション(スライス?)をいっぱい切ってたんだった。どれだったっけな。とりあえずラベルが/usrか、/etc/fstabを探し出したい。適当にマウントして行ってみる。
# mkdir /mnt/usbmass/
# mount /dev/da0s1a /mnt/usbmass/
# ls /mnt/usbmass/
こんな感じで探し当てる。/etc/fstabを見つける事に成功したらローカルにコピペしておいた方が良いと思う。fstabの記述は色々な局面で役立つよね。結局我が家の鯖の場合は、/usr/は、da0s1gに有った。
/usr/home/配下は、ちゃんとファイル属性でユーザーIDとグループIDが残っていた。このユーザーIDが大切なんだよね。これを元に確実にユーザー登録をしていく。そうすればファイル属性を維持したままFreeBSD 6.2R環境へ移行出来るハズだ。
# sysinstall
Configure>User Management>User
UIDをしっかり意識しつつアカウントを合わせていく。まぁ言い換えればUIDさえ理解していればユーザー名を無理に合わせることもないのだが、うちはNameベースのVirtualHostを組んでいるので、ユーザー名が合わないと困った事になるんだな。アカウント登録が終わったらUIDでなく、ユーザー名で表示去れるようになった。これで一安心。
後は各ユーザーでログインしなおしてから、コピーコマンドでボチボチコピーして行く事だ。
# cd /mnt/usbmass/home/sasapurin/
# cp -r -p public_html /home/saspurin/public_html/
cpコマンドに-rと-cのオプションを付ける事がポイントかな。manが使えない(インストールしてない)ので、Googleで検索した。地道な作業だが後でオーナー変更やパーミッション変更をちまちましていくよりはずっと楽だと思うので有り難いと思うべきだろう。
Apache1.3系と2系の設定ファイルの違いと、PerlのPATHの違いで、CGIが動かなくて焦ったけれど、結局やっぱり基本通りに確認すべき点を確認して行けば課題は克服できた。まだ6.x系の事が分かってないので後日ボチボチ調べていかないといけないなと思う次第である。


コメント