BackupZit

Windows サーバーのベアメタル復元

ステップごとのガイド:稼働中の Windows サーバーと PC のディスク イメージを作成し、故障したマシンをリカバリー USB から空のディスクへ戻します。同じハードウェアにも、新しいハードウェアにも、仮想マシンとしても復元できます。

設定する内容

ファイル バックアップで戻せるのは文書です。ディスク イメージならマシン全体を戻せます:パーティション テーブル、ブート パーティション、Windows、プログラム、設定、データ。BackupZit は Windows の稼働中に VSS スナップショットからイメージを作成し、使用中かつ変更されたブロックだけを保存し、リカバリー ISO から新しいディスクへ書き戻します。ディスク故障、ランサムウェア、失敗した更新に見舞われたサーバーも、再インストールせずに復旧できます。BackupZit は無料のオープンソース(AGPLv3)です。

必要なもの

  • BackupZit コンソール:ダウンロード ページの既製イメージから作る小さな Linux VM(2 vCPU、RAM 2–4 GB、ディスク 16–20 GB)、または既存の Debian、Ubuntu、AlmaLinux、Rocky Linux サーバーでのインストール スクリプト。
  • 別のマシン上のバックアップ先ストレージ:SFTP、NAS の SMB 共有、S3 互換バケット、Azure Blob Storage、または強化された BackupZit リポジトリ。
  • 保護する Windows マシン:Windows 10、11、Windows Server 2016 以降。Windows 7 SP1、Server 2008 R2 SP1、2012 R2 は legacy エージェントで、同じイメージ機能を利用できます。
  • リカバリー ISO を作るために一度だけ、無料の Windows ADK を入れた Windows PC(手順 3)と USB メモリ。

手順 1 — エージェントをインストールする

  1. コンソールでエージェントを開き、登録トークンを作成をクリックします。任意の台数に使える、7 日間有効の登録コード(BZ1-…)が発行されます。
  2. 各マシンでエージェント ページの Windows エージェント MSI を実行し、コードを貼り付けます。台数が多い場合は GPO、Intune、RMM ツールでサイレント インストールします:
    msiexec /i backupzit-agent.msi /qn ENROLLCODE="BZ1-..."
    または WinRM 経由でコンソールにインストールさせます:エージェント → ここからマシンにインストール。
  3. 1 分以内に、マシンがディスクとともにエージェント ページに表示されます。

手順 2 — イメージ ジョブを作成する

  1. バックアップ ジョブを開き、マシン用のジョブを作成してディスク イメージを選びます。
  2. すべてのディスクを選ぶと、後から追加したものも含めすべての内蔵ディスクを 1 つのジョブで取得します。または 1 台のディスクを丸ごと、あるいは一部のパーティションだけ選択します(たとえばファイル バックアップで既にカバーしている大きなデータ パーティションを除外)。
  3. 保存先ストレージ、スケジュール、保持期間を選びます。よくある組み合わせ:週 1 回または毎晩のイメージと、毎日のファイル バックアップ。

仕組み:

  • すべてのディスクのすべてのボリュームを1 つの VSS スナップショットから読み取るため、ディスク間の整合性が保たれます。たとえば D: のデータベースと E: のログ。
  • 読み取るのは使用中のブロックだけ(NTFS 割り当てマップ)で、リポジトリに既にあるブロックは再送しません。同じマシンの 2 回目のイメージは通常、数パーセントしか送信しません。
  • バックアップはマシンを出る前に、マシン上で AES-256 により暗号化されます。コンソールが表示するリカバリーキーはバックアップとは別の場所に保管してください。
  • USB/SD ディスク、マウントされた VHD/VHDX ファイル、リムーバブル メディアはすべてのディスクに含まれないため、外付けバックアップ ディスクが自分自身をバックアップすることはありません。

自動復元テスト(既定では毎週、設定 → 復元テスト)は最新のイメージからランダムなブロックを読み取り、チェックサムと照合します。

手順 3 — Windows リカバリー ISO を一度だけ作成する

Windows PE は再配布できないため、リカバリー ISO は任意の Windows 10/11 または Server の PC で一度だけ作成します:

  1. Microsoft の無料の Windows ADK(Deployment Tools 機能)と Windows PE アドオンをインストールします。
  2. リリース ページから build-winpe.ps1 をダウンロードし、エージェントの入ったマシンの C:\Program Files\backupzit Agent から backupzit-agent.exe をコピーします。
  3. 管理者の PowerShell で:
    .\build-winpe.ps1 -AgentExe .\backupzit-agent.exe -Out .\backupzit-recovery.iso
    ストレージやネットワークのドライバー(たとえば Proxmox VM 用の VirtIO)には -DriverDir C:\Drivers を、入力なしでリカバリー システムを接続させるには -RecoveryJson .\recovery.json を追加します。
  4. 必要なら ISO をコンソールの /var/lib/backupzit/dist にコピーすると、リカバリーメディア ページで提供されます。

Rufus(ISO モード)または balenaEtcher で ISO を USB メモリに書き込みます。リカバリーメディアでリカバリ コードを作成を使い recovery.json をダウンロードできます。USB メモリの backupzit フォルダーにコピーしておけば、マシンは入力なしでコンソールに接続します。USB メモリは予備の PC や VM で一度試しておきましょう。必要になった当日ではなく。

Linux マシンはディスク イメージではなく Linux システム ジョブで保護します。そのリカバリー ISO(backupzit-recovery-linux.iso)は各リリースで公開されています。

手順 4 — 空のディスクに復元する

  1. リカバリー USB からマシンを起動します。エージェントがリカバリー モードで起動し、コンソールに接続します(またはサーバー アドレスとリカバリ コードを尋ねます)。
  2. マシンはディスクとともにリカバリー エージェントとして、リカバリーメディア ページとエージェントに表示されます。
  3. アクティビティでイメージ バックアップを開き、このイメージをディスクに復元を選びます。
  4. エージェントに復元でリカバリー エージェントを、復元先ディスクで新しいディスクを選びます。容量は元のディスクの使用領域以上が必要です。復元先ディスクのデータはすべて消去されるので、確認してください。
  5. 実行が終わったら USB メモリを抜いて再起動します。

GPT と MBR のディスク、UEFI と BIOS のブートに対応しています。パーティション レイアウトと ID が再作成されるため、復元したディスクは以前と同じように起動します。すべてのディスクの場合は 1 台ずつ復元します:まずシステム ディスク、次に残りのディスク。

同じフォームで、稼働中のマシンの空きディスクにも復元できます。元のディスクが同じマシンにある場合は、Windows がコピーのディスク ID を変更しないようその後ディスクをオフラインのままにするをオンにします。

異なるハードウェアへの復元

Windows は起動元のディスク コントローラーのドライバーがないと起動しません。そのため Intel コントローラーの PC のイメージは、AMD のマザーボード、NVMe SSD、VM 上では INACCESSIBLE_BOOT_DEVICE で停止します。異なるハードウェアに復元をオンにすると、BackupZit はイメージの書き込み後に復元した Windows を準備します:

  • 一般的なディスク コントローラー用の Windows 標準ドライバーが起動時に再び有効になります:AHCI/SATA、NVMe、Intel RST、LSI/Broadcom/Dell PERC SAS と RAID、HPE Smart Array、Hyper-V、VMware。
  • 追加のドライバーは DISM で組み込まれます:リカバリー ISO 内のものと、追加のドライバーで指定したフォルダーのもの。たとえば USB メモリ上の新しいマザーボードのストレージ/ネットワーク ドライバー(E:\Drivers。サブフォルダーも検索されます)。
  • 新しいマシン用にブート ファイルが再作成されます(bcdboot)。

実行ページには有効化・追加されたドライバーが一覧表示されます。その他の新しいデバイスは初回起動時に Windows が検出します。新しいハードウェアではライセンス認証のやり直しが必要な場合があります。

物理から仮想へ:Proxmox VE または Hyper-V への復元

ディスク イメージは、古い物理サーバーを VM に移す、あるいはイメージが本当に起動するか確かめる最も簡単な方法でもあります:

  • Proxmox VE:GPT ディスクなら OVMF(UEFI)、MBR ディスクなら SeaBIOS で VM を作成し、元のディスク以上の VirtIO SCSI ディスクと VirtIO ネットワーク カードを付けます。リカバリー ISO(VirtIO ドライバー入りで作成)をアタッチし、異なるハードウェアに復元で復元します。
  • Hyper-V:元のディスク以上の空の VM ディスクを作成し(UEFI/GPT は第 2 世代、BIOS/MBR は第 1 世代)、リカバリー ISO から VM を起動して、異なるハードウェアに復元で復元します。

イメージから個別のファイルを取り出す

フォルダー 1 つのためにすべてを復元する必要はありません。イメージの実行には各ディスクとそのパーティションが表示されます。ファイルを参照をクリックすると NTFS ボリュームを参照し、ファイルをダウンロード(複数なら ZIP)したり、任意のエージェント上のフォルダーに復元したりできます。コンソールでの参照には、ネットワーク ストレージ(SFTP、S3、SMB、Azure、強化リポジトリ)上のバックアップが必要です。

知っておくべき制限

  • ディスク イメージは Windows 向けです(NTFS ボリューム、GPT と MBR ディスク)。Linux マシンには Linux システム ジョブを使ってください。
  • 復元先ディスクは、元のディスクの使用領域以上の容量が必要です。
  • UEFI とレガシー BIOS の間では復元できません。復元先は元のマシンと同じ方法で起動する必要があります。
  • Windows PE は再配布できないため、Windows リカバリー ISO は Windows ADK で一度ご自身で作成する必要があります。

次のステップ

BackupZit をダウンロードし、ディスク イメージ機能を確認するか、コンソール内蔵のガイドでイメージと復元の章をお読みください。仮想マシンについては Proxmox VE と Hyper-V のガイドで説明しています。ご質問は GitHub Discussions へどうぞ。企業向けには MaxZit が有償サポートを提供しています(英語のみ)。