春望録

国破れて山河あり

WindowsServerバックアップでSSDのお引っ越しをする

自習のため、windows Server(評価版)を運用しています。

同じマシンの別のSSD to SSD でデータの移行をやってみました。 環境は以下の通り。

余談ですが、「Intel SSD 660p」はwindows Server 2016 に対応していない & 未対応なため、せっかくのNVMeディスクなのに、期待する速度を出せませんでした。

TL;DR

「WindowsServerバックアップ」は、お引っ越しにも使えます。

ツール選定

ディスクの移行ツールとして最初に思い浮かんだのはEASEUS Partition Masterでしたが、(Freeで使えるのは個人利用だけのため)Server OSは商用利用とみなされてしまい、Free版でのパーティション操作は不可。EaseUS Todo Backup も試してみたけど、同様にダメです。 Pro版的な位置づけなのを買ってもいいかなーと思い始めるも、Server対応になるともの凄く高い...。

Intelのデータ移行ツール(Acronis True ImageOEMらしい)も、同じ理由でアウト。

仕方がないので「WindowsServerバックアップ」を使うことに。 使ったことがなかったので、「役割と機能の追加」から追加インストールしました。

この後の手順は、以下が参考になります。

パーティションサイズの縮小 & バックアップ

お引っ越し先のディスクの方が小さいので、先にパーティションを縮小しておきます。 こちらもWindowsの「ディスクの管理」から実行。(有料ツールだとここらへんを手間フリーでやってくれます。)

バックアップはボタン1つで。 上の記事ではネットワークドライブにコピーしていましたが、ローカルの余ってるHDD(SATA接続)を指定しても、この後の手順と同じように実行できました。

リストア

復元は、Windows PEのディスクを作って、ディスクからブートして行います。 自分の場合はWindows Serverのインストールのときに作ったインストールディスクが残っていたので、それを使いました。

※ ちなみに、最初はたまたま手元にあったWindows7のインストールディスクを使ってみたが、対応していない、と怒られてしまいました・・。

トラブルシュート

0x80042412 システムディスクの回復に使用できるディスクが見つかりません。

1回目の復元では、残念ながらエラーですぐに止まってしまいました。 エラーコードで調べると「移行先のディスクが小さい場合に起こる」と書かれていたが、今回は先にパーティションの縮小を行っているので該当なし。 念のためパーティションをできるだけ縮小して259GBくらいまで絞ってもやっぱりダメ。

0x80042412エラーでシステムイメージを復元できない - マイクロソフト コミュニティ

システムイメージ作成時と同じディスク容量、同じパーティション構成にして実行してください Windowsのバックアップ機能で作成したイメージは作成時と同じ環境が必要です

1つ気になったのはこれを試してみる。結論から言ってこれで成功しました。 新規のディスクに対して、バックアップ前のディスクと同じ構成・サイズになるように、ポチポチとパーティションの設定をしなさい、ということです。

物理障害でディスクがお釈迦になった時は、どうやって同じパーティションを再現すれば???このバックアップツール本気で使う人いるの????とちょっと不思議は残ります。 (業務で作ったサーバなら、設計書にパーティションサイズくらい書いてある…か?)

GPTパーティションを作成(再現)する

起動ディスクに入っているコマンドプロンプトからdiskpartをぽちぽちと打ってパーティションを作成しました。

帰ってきた徒然苔: Windows10でもやっぱり増殖する回復パーティション

DISKPART> list partition

  Partition ###  Type                Size     Offset
  -------------  ------------------  -------  -------
  Partition 1    回復                 450 MB  1024 KB
  Partition 2    システム               100 MB   451 MB
  Partition 3    予約                 16 MB   551 MB
  Partition 4    プライマリ              XXX GB   567 MB

上の状況を再現することを目標とします。 コマンドは以下の通り。

回復パーティション

create partition primary size=450
format quick fs=ntfs
set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
gpt attributes=0x8000000000000001

EFIパーティション

create partition efi size=100
format quick fs=fat32

MSR用パーティション

create partition msr size=128

Cドライブ用パーティション

create partition primary
format quick fs=ntfs

回復ドライブを作成する際に、set id=27と打ったら怒られました。 GPTでは呪文が変わったそうで、set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"としなければならないそう。

このコマンド、長いですね~。持ち込み禁止の現場でサーバ設定をやっている皆さん、今日も本当にお疲れ様です!(唐突)

0x81000036エラー

ここまでやってまたエラー発生。 特に有益な情報はヒットしなかったので、前のサイズとぴったり合わせてつくったCドライブ用のパーティションを、なんとなく大きくしてみたら問題が解決した。 回復/EFI/MSRパーティションあたりはサイズを合わせる必要があるが、単にNTFSのデータ用パーティションはどんなサイズでも良かったらしいです。 (リカバリ実行後には、このパーティションは削除されて、リカバリ元のパーティションのサイズになっていた)

まとめ

  • WindowsServerバックアップを使うとServerエディションのWindowsでも無料でお引っ越しが出来る。(普段の障害対策のバックアップでは微妙かも)
  • 新規のディスクに「復元」したい場合、回復/EFI/MSRパーティションの容量を合わせて作っておく必要がある(データ用パーティションのサイズチェックはそんなに厳格ではないみたいです)
  • Intel SSD 750 は快適です!