🏥

バックアップツールresticで、ネットワークドライブを丸ごとバックアップ・リストアする

2024/07/24に公開

バックアップツールrestic

を用いて、ネットワークドライブ丸ごとバックアップ・リストアしたときに
いくつか問題が生じたので、解決策をメモしておきます。
https://restic.net/

backupのリファレンス
https://restic.readthedocs.io/en/latest/040_backup.html
restoreのリファレンス
https://restic.readthedocs.io/en/latest/050_restore.html

バックアップ

ネットワークドライブ "Z:" を丸ごとバックアップするコマンドは、以下の通りです。
(powershell)

& "restic.exe" backup "Z:"

バックアップ自体は特に問題なく完了しました。
スナップショットは以下の様になります。

 & "restic.exe" snapshots
6accda43  2024-07-16 03:09:30  DESKTOP-DNMHMJJ              Z:\

このとき、例えば、Z:\の下がこちらのようなファイル構成だった場合、

Z:\フォルダA\ファイル1
Z:\フォルダA\ファイル2
Z:\フォルダB\ファイル3
Z:\ファイル4

restic上にバックアップされたファイル群のフルパスは、このようになっています

/Z/Z:./フォルダA/ファイル1
/Z/Z:./フォルダA/ファイル2
/Z/Z:./フォルダB/ファイル3
/Z/Z:./ファイル4

リストア

上記を全てrestoreしようとして、上記snapshotのidを指定し、ファイルをc:\tmpに展開すると、
windows上で"ファイル名にが作成できないため、エラーが発生します。

& "restic.exe" restore  -t "c:\tmp" 6accda43
mkdir \\?\c:\tmp\Z\Z:: The filename, directory name, or volume label syntax is incorrect.

Z:\のネットワークドライブ以下のファイルと、フォルダ構成だけを展開したい場合は、
以下のようにshapshot idに続いて":"(コロン)でルートのディレクトリを指定することで、
展開できます。

& "restic.exe" restore -t "c:\tmp" 6accda43:"/Z/Z:."

ネットワークドライブ直下の構成が、きれいにrestoreされました。

C:\tmp\フォルダA\ファイル1
C:\tmp\フォルダA\ファイル2
C:\tmp\フォルダB\ファイル3
C:\tmp\ファイル4

Discussion