POPサーバーがいきなり停止

この記事を読む およそ時間

久しぶりのサーバーネタですが、
昨日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

まったくのオペチョン?である。

とりあえず
-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/ / 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つ目のアーカイブに入っている事を指示している。
2つ送った場合は、【】を入力する。

set owner/mode for ‘.'? [yn] n
restore > quit

※この操作は実行したディレクトリに書き出されますので
/var/配下で実行したため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のフォルダー構成も
何も変化無くつながるのでこれで様子を見よう。

いやー一日だった!!

Related posts