ぶっ壊したVPSサーバーを復活させるまでの試行錯誤
≫ オペミスでVPSサーバーぶっ壊した( ;∀;) - 今日の役に立たない一言 − Today’s Trifle! −
使ってるサーバーは、serversman@VPS。
ぶっ壊した経緯を簡単に書くとこんな感じ。
・yum remove で必須ファイルを削除してしまった
・VPSを停止
・serversman@Disk をサクッと契約
・serversman@VPS の現状を serversman@Disk にバックアップ
・VPSを初期化ついでにCentOS6.3にバージョンアップ
・serversman@Disk をCentOSにマウント
・backup.tar を展開するが壊れていて展開できない
というのが前回の話。
その後、backup.tar をローカルの Macbook にコピーする。最初、HTTPダウンロードしようとしたけど、やたら時間がかかるので、scp でやりなおした。
Macbook で backup.tar を展開してみたが、やっぱり壊れてて多くのファイルを展開できない。
serversman のサポートに問い合わせてみたら、数日後にこんな回答が来た。
また、お客様のbackup.tarファイルの状態についても調査を実施させていただきましたところ、弊社検証環境では、エラーも無く最後までリストア動作に問題はございませんでした。
しかしながら、お客様のbackup.tarファイルにおきましては、OS起動に必要なファイルが欠けており起動に失敗する状態でございましたため、そのことがシステムで検知された結果、リストア失敗としてお客様へ通知されているとの事でございました。
つまりバックアップされてるファイル自体は壊れてないということだ。
マウントしたserversman@Disk のファイルを、VPS上にコピーしてみた。
そこで重大な事実に気付いた。
# ls -l /mnt/smdisk/backup/backup.tar -rwxrwxrwx 1 root root 15417006080 May 20 09:45 /mnt/smdisk/backup/backup.tar # cp -p /mnt/smdisk/backup/backup.tar . # ls -l backup.tar -rwxrwxrwx 1 root root 15408374033 May 20 09:45 /mnt/smdisk/backup/backup.tar
コピーしたファイルのサイズが違うんですけどぉぉぉぉぉぉ!!!
そしたら、Google+でsparse file じゃないかとコメントをもらった。
なるほどと思って、オプションをつけてコピーしなおしてみた。sparseオプションは auto/always/never の3種類があるけど、どれを使っても正常にコピーできなかった。
# cp -p --sparse=never /mnt/smdisk/backup/backup.tar . # ls -l backup.tar -rwxrwxrwx 1 root root 15408467324 May 20 09:45 backup.tar
rsync でも正常にコピーできない。
# rsync -avS /mnt/smdisk/ . sending incremental file list ./ backup/ backup/backup.tar rsync: read errors mapping "/mnt/smdisk/backup/backup.tar": No data available (61) WARNING: backup/backup.tar failed verification -- update discarded (will try again). backup/backup.tar rsync: read errors mapping "/mnt/smdisk/backup/backup.tar": No data available (61) ERROR: backup/backup.tar failed verification -- update discarded. sent 30837776238 bytes received 59 bytes 4134027.25 bytes/sec total size is 15417006080 speedup is 0.50 rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]
最初にあきらめたHTTPダウンロードを試してみた。ダウンロードが終わるまでに6時間近く待たされた。
待たされたけど、サイズが同じファイルを取得できた!!!(5月31日)
ダウンロードしたファイルをscp でサーバーにアップロード。サーバー上で tar での展開も問題なく成功。
VPS上に構築してたWebサイトを復旧できたのが6月1日。
10日以上もアクセスできない状態になったままだったので、たくさんの人に迷惑をかけた模様。たいしたことは書いてないのに、JoomlaとかWordPressのサイトはそれなりにアクセスがあったりする。
それにしても、マウントしたファイルを正常にコピーできないのはなぜなんだろう?