システムガーディアンの公式ページを快適にすべく新サーバに移行しました٩(๑❛ᴗ❛๑)۶そこによくあるDNS変更に伴い出てくるメールのお悩み。新しいDNSレコードの完全な浸透は3日程かかるので、DNSのキャッシュから新サーバだけでなく、旧サーバにもメールが来てしまいます。新サーバのメール環境を満喫している時にもし大切なメールが旧サーバに届いてしまっていたら、ビジネスチャンスの損失や、顧客の信頼を失いかねません。
どっどうすればいいのだ・・・?
rsyncによって旧サーバから新サーバにメールの差分を取得します。
1 |
# rsync -avuz -e "ssh -p 22 -i /root/.ssh/id_rsa.ppk" root@旧サーバIP:/var/qmail/mailnames/ /var/qmail/mailnames/ |
いい塩梅で旧サーバに届いたメールの差分を取得出来た。
ここで問題が!
このままだとDNSが浸透する3日以上の間、10分間隔で上記のコマンドを打たなければいけない。3日間泊まり込みでせっせとメール移動していたという恐ろしい伝説も聞いたことがある。
・・・そうだ!
【Watch】コマンドを使わざるを得ない!
watchコマンドは定期的にコマンドを実行させる時に使う。
1 |
# watch -n 秒数 コマンド |
具体的にはこう。
1 |
# watch -n 20 "rsync -avuz -e \" ssh -p 22 -i /root/.ssh/id_rsa.ppk \" root@旧サーバIP:/var/qmail/mailnames/ /var/qmail/mailnames/" |
ポイントはLinuxコマンドのエスケープ部分。20秒毎に旧サーバに届いてしまったメールの差分を新サーバに送ってくれます。
サーバー管理者も夜は寝よう
こうして平和な眠りを得る事が出来ますー٩(๑❛ᴗ❛๑)۶おニューなサーバをエンジョイ!