作業
- サーバ停止をユーザにアナウンス
1週間程度の余裕を持たせるのが望ましい.
- 停止の一時間ほど前にバックアップを一度行っておくと時間の節約になる (ログアウトしても処理を中断させない)
# nohup /etc/cron.daily/rsync & # sync (数回実行)
- 直前のサーバー停止のアナウンス
# wall This system will shutdown at ??:?? Please logout
- ログインしているユーザを強制的にログアウト
未だログインしているユーザを調べる.
# who
アカウント名の隣にある数字がそのユーザの PID である.# ps aux | grep [who で分かったアカウント名]
ユーザのプロセスを強制的に kill する.
# kill -KILL PID
- tcpserver の停止
tcpserver 関連の PID を確認 (左から 2 つ目に表示されるものが PID)
$ ps aux | grep tcpserver
tcpserver の停止
# kill -TERM /usr/bin/tcpserver -v -x /etc/tcp.smtp.cdb -u 108 -g 109 0 smtp /var/qmail/bin/qmail-smtpd のPID
# kill -TERM /usr/bin/tcpserver -v -u 0 -g 0 0 pop-3 /var/qmail/bin/qmail-popup grey.ep.sci.hokudai.ac.jp /bin/checkapoppw /var/qmail/bin/qmail-pop3d Maildir のPID
# kill -TERM /usr/bin/tcpserver -v -u 0 -g 0 0 imap2 /usr/local/sbin/imapd のPIDtcpserver プロセスが停止したことを確認
$ ps aux | grep tcpserver
- メールキュー内のメールを排出. 同時にqmail のプロセス停止.
qmail のプロセスを調べる.
# ps aux | grep qmail-send
qmails の右の数が PID である.qmail のプロセスを停止する.
# kill -TERM qmail-send のPID
メールキュー内のメールが 0 になったことを 確認.# /var/qmail/bin/qmail-qstat
qmail プロセスが停止したことを確認.$ ps aux | grep qmail
- ネットワーク線を抜く
- 電源OFF
# shutdown -h now
起動時の手順
$ ping 133.87.45.70
参考文献
- qmailのページ
- 「qmail メールサーバの構築」Richard Blum 著