久しぶりのサーバーネタですが、
昨日22時16分に監視サーバーから
POPサーバーが停止したとの監視メールがきた。[:ぎょ:]
どれどれ?
POPサーバーの再起動をしてみようかな。[:汗:]
/etc/rc.d/init.d/dovecot restart
とコマンドを打ってみた。
そんなファイル無いと突き返される。
>#/etc/rc.d/init.d dovecot restart
-bash: /etc/rc.d/init.d: is a directory
おいおい!!なんで?(>_<)
意味分からなくね?
ps -ef | gerp dovecot で見るもやはりプロセスがいない。
# ps -ef | grep dovecot | grep -v grep
#
やべ~とログを色々調査した所
その時間帯にMysqlのインストールをやっていて、
今入っているversionを削除した際に
間違ってPOPサーバーも削除したようだ。(>_<)
したのかな?ログにはでているが、コマンドヒストリーにはねえぞ!!汗
バグ?気持ち悪いな![:汗:]
Nov 13 22:11:52 Erased: mysql
Nov 13 22:11:53 Erased: dovecot ←これ!汗
Nov 13 22:11:53 Erased: mysqlclient14
まったくのオペチョン?である。
とりあえず
yum -y install dovecot
でインストールして様子を見ることに。
まずは起動。
/etc/rc.d/init.d dovecot start
Dovecot Imap を起動中: [ OK ]
普通に起動した。
メールクライアントから接続してみるがつながらない。
原因はわかっていてnetstat -an
で開いているポートを確認するも110としか開いてない。
tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN
当然か。
さっきのインストールで以前設定していた
コンフィグファイルが消えている(上書き)事が
明らかで設定を一切していない状況に。
時間はすでに深夜12時を過ぎていてやばさが漂う。
こんな時にバックアップだよ。
そうこのWebサーバーには一丁前にDDS4のテープ装置が
付いている関係で15日ごとの周期でフルバックアップを
取っている所から設定ファイルのみをリストアすることに。
POPサーバーを構築してから数ヶ月経過しているので
15日前の設定ファイルでも差異がないと言うことで
早速リストアを実施。
このコマンドでバックアップファイルの中にアクセスできる。
restore -if /dev/st0 書式は【restore -if Device名】
実行例
# restore -if /dev/st0
restore >ls
config-2.6.9-55.0.9.ELsmp vmlinuz-2.6.9-55.0.6.ELsmp
config-2.6.9-55.EL vmlinuz-2.6.9-55.0.9.EL
config-2.6.9-55.ELsmp vmlinuz-2.6.9-55.0.9.ELsmp
config-2.6.9-55.plus.c4 vmlinuz-2.6.9-55.EL
config-2.6.9-55.plus.c4smp vmlinuz-2.6.9-55.ELsmp
grub/ vmlinuz-2.6.9-55.plus.c4
initrd-2.6.9-42.0.10.EL.img vmlinuz-2.6.9-55.plus.c4smp
あれ?これ/boot のバックアップファイルっすね。
restore >quit
テープを1つ送らないと/etc配下が見えないね。
#mt -f /dev/nst0 fsf 1
# restore -if /dev/st0
restore > ls
.:
.autofsck dev/ media/ sbin/ tmp/
.bash_history etc/ misc/ script/ usr/
.rnd home/ mnt/ selinux/ var/
backup/ initrd/ opt/ shere/
bin/ lib/ proc/ srv/
boot/ lost+found/ root/ sys/
対象ファイルを探してみよう。
cdとかlsが使えるので【cd /etc】と【ls】で探します。
restore > cd /etc
restore > ls
./etc:
dovecot.conf
dovecot.conf.rpmnew
リストア対象ファイルをマークする。
restore > add dovecot.conf
実行例
restore > ls
*dovecot.conf
↑マークされていることが確認できる。
最後に終了コマンドをいれる。
restore > extract
次の様に問い合わせが来るが次のように入力する。
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume # (none if no more volumes):【1】
※かっこの中身は、さっきテープを1つ早送りしたので
1つ目のアーカイブに入っている事を指示している。
2つ送った場合は、【2】を入力する。
set owner/mode for ‘.’? [yn] n
restore > quit
※この操作は実行したディレクトリに書き出されますので
/var/log配下で実行したためetcというディレクトリが
作成されその中に上でaddでリストア対象にしたファイルが
格納されていることがわかる。
# ls | grep etc
etc
# cd etc
# ls
dovecot.conf
無事ファイルが抽出されたようだ。
バックアップはとっておく物ですね。[:にかっ:]
早速復旧作業を行う。
インストールの際出来た初期のファイルを一応とっておく。
cp -p /etc/dovecot.conf /etc/dovecot.conf.org
次にさっきのファイルを上書きする。
mv ./dovecot.conf /etc
上書きした所で以下のコマンドでスタートする。
/etc/rc.d/init.d dovecot start
Dovecot Imap を起動中: [ OK ]
クライアントから設定を変えず接続してみる。
無事つながるみたいだ。Imapのフォルダー構成も
何も変化無くつながるのでこれで様子を見よう。
いやー疲れた一日だった!!