SJ blog
Qubes OS
Z

信頼度ランク

S 公式ソース確認済み
A 成功実績多数・失敗例少数
B 賛否両論
C 動作未確認・セキュリティリスク高
Z 個人所感

Qubes OS のバックアップと復元

Qubes OS 標準のバックアップ機能を使ったVM・設定のバックアップ方法、外部メディアへの暗号化バックアップ、復元手順を解説します。

一言結論

Qubes OSのバックアップはVM単位で行い、テンプレートVMは再ダウンロードできるためバックアップ不要だが、パスフレーズは絶対に別管理することがデータ復元の鍵となる。

Qubes OS のバックアップの考え方

通常の OS と違い、Qubes OS では各 VM が独立しているため、バックアップも VM 単位で行います。

バックアップすべきもの:

  • AppVM のデータ(/home など)
  • カスタム設定(/rw/config
  • dom0 の設定(ファイアウォールルール、VMの設定)

バックアップしなくても良いもの(再インストールできる):

  • テンプレートVM(公式から再ダウンロード可能)
  • sys-net / sys-firewall(設定は残す)

GUI でのバックアップ

Q メニュー → System Tools → Backup Qubes

バックアップの設定

  1. バックアップする VM を選択(必要なAppVMだけ選ぶ)
  2. バックアップ先を選択:
    • 外部USB ドライブ(推奨)
    • ネットワーク先(SSH、Nextcloud など)
  3. パスフレーズを設定(バックアップ自体が暗号化される)
  4. Backup をクリック

重要: バックアップのパスフレーズは Qubes OS のパスフレーズとは別に設定します。

コマンドラインでのバックアップ

# dom0 ターミナルで
qvm-backup --help

# 基本的なバックアップ(USB ドライブへ)
qvm-backup -d /dev/sdb1 work personal vault

# 全VMをバックアップ
qvm-backup -d /dev/sdb1 --all

# バックアップ先をディレクトリで指定
qvm-backup --dest-vm personal --dest-dir /path/to/backup work personal

# パスフレーズをコマンドラインで指定(セキュリティに注意)
echo "mypassphrase" | qvm-backup --passphrase-stdin -d /dev/sdb1 work

バックアップファイルの構造

qubes-backup-YYYY-MM-DDTHH-MM-SS/
├── qubes.xml          ← VM設定(暗号化なし、メタデータのみ)
├── backup-header      ← 暗号化パラメータ
├── qubes.xml.000.enc  ← 暗号化されたVM設定
├── work/
│   └── private.img.000.enc  ← 暗号化されたデータ
└── personal/
    └── private.img.000.enc

バックアップは scrypt または GPG で暗号化されます。

バックアップの検証

# バックアップの整合性を確認(復元せずに検証)
qvm-backup-restore --verify-only /path/to/backup

復元手順

GUI での復元

Q メニュー → System Tools → Restore Qubes

  1. バックアップファイルのパスを指定
  2. パスフレーズを入力
  3. 復元する VM を選択
  4. Restore をクリック

コマンドラインでの復元

# バックアップから復元
qvm-backup-restore /path/to/backup/dir

# 特定のVMだけ復元
qvm-backup-restore --vms=work,personal /path/to/backup/dir

# dom0 設定も復元
qvm-backup-restore --dom0-home /path/to/backup/dir

# 既存のVMを上書き(注意!)
qvm-backup-restore --force-root /path/to/backup/dir

自動バックアップのスケジュール

dom0 の cron を使ってスケジュール実行:

# dom0 ターミナルで
sudo crontab -e

# 毎日午前3時にバックアップ(USB が接続されている場合)
0 3 * * * /usr/bin/qvm-backup --passphrase-stdin \
  -d /dev/disk/by-label/BACKUP work personal vault \
  < /root/.backup-passphrase 2>> /var/log/qubes-backup.log

注意: パスフレーズをファイルに保存する場合は、ファイルのパーミッションを 600 に設定してください。

バックアップのベストプラクティス

3-2-1 ルール

  • 3つ のコピーを保持
  • 2つ の異なるメディア(USBドライブと外付けHDD など)
  • 1つ はオフサイト(別の場所)に保管

バックアップの頻度

データの種類推奨頻度
重要な仕事データ毎日
個人データ週1回
設定ファイル変更時

バックアップメディアの選択

  • 推奨: 暗号化済み外付けSSD(VeraCrypt で追加暗号化)
  • 次善: 通常のUSBドライブ(バックアップ自体は暗号化済み)
  • 避ける: クラウドストレージへの直接バックアップ(Qubes OS の信頼モデルに反する)

よくある問題

バックアップが途中で止まる

USB ドライブの容量不足、または書き込みエラーが多い場合:

# バックアップ中にエラーを確認
journalctl -f  # dom0 で別ターミナルから監視

復元後に VM が起動しない

テンプレートが復元先に存在しない場合:

# 必要なテンプレートをインストール
sudo qubes-dom0-update qubes-template-fedora-40

まとめ

バックアップは「もしもの時」のためだけでなく、Qubes OS の大規模アップデートや新しいPCへの移行にも使えます。少なくとも月1回はバックアップを取り、復元テストもすることを強くお勧めします。