サーバのHDDがエラー頻発して、OS毎落ちてしまうようになった。
一応起動はするが、そのうちエラーが出て落ちてしまう。
新しいマシンへの乗り換えも考えたが、せっかく用意したPentiumMのデスクトップなので、もう少し使いたい。
HDDの異常だと思われるので、ケースを開けて中を見てみる。
IDEにHDDとCD-ROMが繋がっていて、マザーを見るとSATAの端子がある。
秋葉まで行くのも面倒だったので、近所のPCデポへ。
完成品のマシンだと気に入ったのがなくて、やっぱりHDDだけ買うことにする。STATの500Gで5千円ちょっと。
帰ってきたら早速繋ぐ。
FreeBSD 7.1 の bootonly の CD を作成してboot。
biosからは認識されず、FastTrak上で認識したので、RAIDの設定をするが、1台しかないのでRAID0も1もない。
古いHDDはad0(今までどおり)、新しいHDDはad4として認識した。
ad4 に FreeBSD をftpでインストール。
/ 512M
swap 2G
/usr 128G
/var 残り

はっきり言って /usr に 128Gは激しく不要だったな。前回と違って/jailを取らなかったのも問題か。
インストールが終わったら、古いHDDから /etc /usr /var をtarでバックアップ。
/var は古いHDDの内容をそのまま新しいHDDの/varにコピー。/var/runとか問題あるかも知れないけど、大問題にはならないだろう。
途中、ad0のハードウェアエラーっぽいメッセージがしばしば出たが、コピーは継続された。

続いて、/etc/supfileを古い/etcからコピーして、csup する。
/etc/make.conf を古い/etc/からコピーして、/sys/i386/conf/のファイルもコピーして、カーネルとユーザランドを作り直す。(これは別に急がなくても他の復旧を先にやるべきか)

/etcのファイルをコピー
  • group, passwd, master.passwd, pwd.db spwd.db
  • hosts.allow
  • ipf.rules, ipnat.rules
  • inetd.conf
  • newsyslog.conf
  • ntp.conf
  • aliases, aliases.db(aliasesをコピーしてnewaliasesした方が良いかも)
  • cram-md5.pwd
  • periodic.conf
  • printcap
  • sysctl.conf
  • syslog.conf
  • sshディレクトリ
  • crontab(コピーしたら有効になるので、他のパッケージのインストールが済んでからの方が良い)
  • resolv.conf(同上)
  • rc.conf
/usr/local/etc/pkgtools.confもコピーする。

後は、portsからひたすらパッケージをインストールする。
  • ports-mgmt/portupgrade
    この過程で、rubyがインストールされてますよ、と言うエラーが出た。
    /var/db/pkg を古いもので上書きしてしまったのが原因なので、一度このディレクトリを削除した。
    # 面倒だから、/usr/local/毎全部コピーした方が早かったかも。
  • databases/portgresql81-server(最初8.3を入れたら、データベースのバージョンが違うと怒られたので、以降なるべく昔のバージョンと同じものを入れるようにした)
  • databases/mysql50-server
  • sysutils/screen
  • net/isc-dhcp30-server
  • mail/postfix
  • security/f-prot→This version no longer receives updates.
  • security/amavisd-new →f-protが入らないなら意味がないけど、postfixの設定を変えるのが面倒なので入れてみた
  • mail/dkfilter
  • mail/drac
  • mail/mailman
  • mail/qpopper
  • mail/courier-imap
  • www/apache22
  • www/mod_perl2
  • www/mod_python3
  • lang/php5
  • lang/php5-extension
  • devel/subversion
  • www/p5-CGI.pm
  • graphics/p5-Image-Size
  • databases/p5-DBI
  • databases/p5-DBD-Pg
  • security/p5-Crypt-DSA
  • graphics/p5-GD
  • graphics/p5-Image-Magick-Iterator(?)
  • textproc/p5-XML-Atom
  • mail/p5-Mail-Sendmail
  • devel/p5-File-Find-Rule
  • devel/p5-Moose
  • devel/p5-POE
  • devel/p5-UNIVERSAL-require
  • devel/p5-Class-Accessor
  • devel/p5-DateTime-Format-Strptime
  • devel/p5-DateTime-Format-Mail
  • devel/p5-DateTime-Format-MySQL
  • mail/p5-MIME-Types
  • www/p5-Template-Toolkit
  • www/p5-Template-Provider-Encoding
  • www/p5-Feed-Find
  • net-mgmt/net-snmp
  • net-mgmt/cacti
  • japanese/p5-Jcode
  • devel/ruby-gems
  • www/rubygem-rails
  • converters/ruby-iconv
  • graphics/freeimage
  • ports-mgmt/portaudit
  • www/squid
  • editors/emacs
  • sysutils/apcupsd
  • japanese/samba3
  • security/tripwire
  • net/asterisk
  • security/openvpn
  • net/poptop
  • mail/ilohamail

インストールが終わったら、/usr/local/etcの設定ファイルをコピー。
/usr/local/share/courier-imap/imapd.pem 等もコピー
/usr/local/pgsql/data をコピー
/usr/local/apacheをコピー(昔の名残でここにある)
/usr/local/share/cactiをコピー
/usr/local/tiarra, mail2entry, mobircをコピー
/use/local/etc/periodic/weekly/900.cvsupをコピー
/usr/local/share/snmp/snmpd.confをコピー
/usr/local/www/ilohamail.conf/conf.incをコピー

mobircとPlaggerでperlの依存関係で結構はまる。
後は、メール関係がf-protが既にパターンファイルが更新されないとかでインストールできなかったのと、amavisがまともに動かなかった。
そして、imapsとsmtpsが何故か動かず。キーファイルとかは持って来たはずなんだけど。
qpopperのpop3sは問題なく動いた。
まあ、なんとかapacheとfastladder、mobircは動くようになったので、とりあえずは生活できそうだけど、メール周りが不完全っぽいのが気持ち悪いなあ。

あと、今回はいかれたHDDがまだ読めたからなんとかなったけど、本当に読めなくなってしまったら非常に困ったことになるところだった。
今回の移植の手間を参考に、ちゃんとしたバックアッププランを立てないといけないな。(と、いつも思うけどなかなか実現できない。MovableTypeのDBだけバックアップしても、アップロードした写真とかはバックアップできないし、全部取ろうと思うと一回の時間と容量が・・・。)

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: サーバHDD逝く

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/1906

コメントする

このブログ記事について

このページは、falseが2009年3月29日 17:53に書いたブログ記事です。

ひとつ前のブログ記事は「やばい」です。

次のブログ記事は「backup」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1