X

Windows Server Essentials でクライアントバックアップに失敗するようになった。原因はデータベースファイルの破損

いつからか、Windows Server 2012 R2 Essentialのクライアントコンピューターバックアップに失敗したり、サーバーの”Windows Server Essentials Computer Backup Service”が停止したりするようになりました。

しばらく気にしていなかったのですが、何かあった際に困るので、原因の解決にチャレンジしてみました。

問題解決までの流れ

バックアップデータベースの修復は失敗

バックアップデータベースの修復手順をまず試してみました。

  1. サーバーダッシュボードを開き、[デバイスタブ]>[コンピュータータスク]>[クライアントコンピューターのバックアップタスク]を開きます。
  2. ツールタブを開き、[バックアップの修復]の[今すぐ修復]を押下します。

結果はエラー。バックアップデータベースの修復に失敗するということは、データベースの破損が疑われます。

バックアップデータベースのコピーをとる

バックアップデータベースのどのファイルに原因があるのか切り分けるため、まずバックアップとしてファイルのコピーをとることにしました。

サービスの管理から、”Windows Server Essentials Computer Backup Service”を停止し、[ServerFolders\クライアント コンピューター バックアップ]フォルダー内のファイルをすべて別の場所にコピーします。

すると、Index.4096.dat ファイルだけが、エラーとなりコピーできないことがわかりました。

Index.4096.datファイルを再構築

原因がわかったので、Index.4096.datファイルを適当な名前にリネームし、再度サーバーダッシュボードからバックアップの修復を実行します。

すると、バックアップデータベースの修復が無事開始しました。

バックアップデータベースが保存されているサーバー上のフォルダーを観察してみると、先ほどリネームしたIndex.4096.datに代わり、Index.4096.newファイルが作成されています。

ウィザードは、各データベースファイル(Data.4096.xx.dat)の情報を、この新しいIndexファイルに書き込むことで、データベースの修復を実施しています。

修復は開始するようになったが途中でエラー

さて数時間後。無事修復ウィザードは開始しましたが、ウィザードはエラーで終了しました。

原因解決の手がかりになる情報を探して、サーバー側(C:\ProgramData\Microsoft\Windows Server\Logs)に保存されている、バックアップデータベースの修復に関するログファイル(backuprepair-MMDDYY.log)を開いてみます。

すると、上の画像のように、4096.62のdatファイルの情報をIndexファイルに書き込みした情報でログが終わっていました。サーバー内には実際には98個のdatファイルがあるので、途中で異常終了していることが推察できます。この4096.62のファイルを書き込み開始した時点、書き込み終了した時点のどちらでコミットしているのかはわかりませんが、書き込み開始時点だとするとバックアップデータベース内のData.4096.62.dataが破損している可能性があります。

破損が疑われるファイルをリネームして再度修復ウィザードを開始

書き込み開始時点でログを吐いていて、Data.4096.62.datファイルが破損したためにIndex作成が完了しなかったのだろうとあたりをつけて、[ServerFolders\クライアント コンピューター バックアップ]フォルダー内にある、Data.4096.62.datファイルを、Data.4096.62.dat_oldにリネームし、再度ウィザードを実行します。

データベースの修復が完了

途中、ダッシュボードのアプリケーションが終了するなどしましたが、修復タスクは継続して実行され、無事に修復が完了しました。これで、クライアントコンピューターのバックアップも正常に動作するようになると思います。

私のケースでは、修復完了後に、読み取れなかったData.4096.62.datファイルを正常な名前にリネームし、再度上記の手順を実行したところ、全て読み込むことに成功しました。

一部のデータは消失する可能性

バックアップは正常にできるようになったものの、ダッシュボードから確認すると過去のバックアップは正常に完了したものも”未完了”と表示されるようになりました。

しかし、クライアントコンピューターからダッシュボードを開き、”コンピューターのファイルまたはフォルダーの復元”を実行する際、”完了していないバックアップも表示する”にチェックをつけることで、過去のバックアップイメージもマウントすることができます。

一部のファイルが破損している可能性があるため、完全とはいえませんが、ファイルの取り出しは可能でした。フルメタルリストアは諦めた方がよいかもしれません。

クライアントコンピューターのバックアップは重要

クラウド環境にデータが保存されていたり、ブラウザのブックマークもクラウドで管理されていたりして、ローカルに保存されているデータはかなり減ってきたかもしれません。コンピューターの再セットアップも以前よりはかなり楽になりました。

それでも、クライアント上にしかないファイルは意外とまだまだあって、今回もWindow Server Essentialsのバックアップがなければ困っていました。

備えれば憂いなし、クライアントコンピューターのバックアップを手軽にとれるEssentialsサーバーはクラウド時代でもまだまだ活躍しそうです。

サーバーダッシュボードも、Indexファイルが破損して修復できない場合や破損したdatファイルがある場合、エラーで終了するのではなく、今回手動で実施したように破損したファイルはあきらめて、修復を続行するよう振る舞ってくれるともう少し信頼度が増すのですが・・・。

ださっち: