バックアップの移動
バックアップは、すべてをアップロードし直すことなく、別のフォルダ、ドライブ、サーバー、バケット、プロバイダーに移せます。
Permafrost には移動できるフォルダがないため、この方法ではバックアップを Permafrost に移すことも、Permafrost から移すこともできません。Permafrost に切り替えるとき、または Permafrost から切り替えるときは、frost init で別系統のバックアップを始めてください。
| やりたいこと | 方法 |
|---|---|
| バックアップを別のフォルダ、ドライブ、サーバー、バケットに移す | リポジトリのフォルダを丸ごと移動し、Frost に新しい場所を設定します。何もアップロードし直しません |
| 別の場所で、別系統のバックアップを始める | frost init を実行し、新しい空の場所を選びます。古いバックアップはそのまま残りますが、Frost が表示するのは新しいほうだけです |
| 移動前のバックアップに戻る | Frost に元の場所をもう一度設定します |
#リポジトリを移動する
リポジトリとは、ストレージ内で frost.repo、chunks/、snapshots/、trees/ が入っているフォルダのことです。この 4 つを、中のオブジェクトごとすべて移動またはコピーし、名前はまったく変えないでください。frost.repo だけを移しても、バックアップは移動しません。
セルフホストのサーバー、ローカルドライブ、S3 ストレージには同じファイルが入るので、rsync、rclone、ファイルマネージャーでリポジトリを互いにコピーできます。たとえば、次のコマンドはドライブからサーバーにバックアップをコピーします。
rsync -a /Volumes/Backup/frost/ [email protected]:frost/
そのあと、Frost に新しい場所を伝えます。ドライブやサーバー上の別のフォルダに移した場合:
frost config set storage.local.path /Volumes/Backup2/frost
frost config set storage.sftp.path backups/frost
別のバケットに移した場合:
frost config set storage.s3.bucket new-bucket
バケット内の別のフォルダに移した場合:
frost config set storage.s3.prefix backups/frost
別の種類のストレージや別のプロバイダーに移るときは、いくつもの設定を一度に変える必要があるので、frost init を実行して新しい移動先を選んでください。セットアップがバックアップを見つけて接続します。
#保存前のチェック
frost config set は、新しいストレージの場所を保存する前に確認します。Frost リポジトリがない場所や、別のキーで作られたリポジトリは拒否します。同じリポジトリのスナップショットが元の場所にはあるのに、新しい場所にはない場合も、その変更を拒否します。frost config edit は同じ問題を警告として表示するだけなので、set が拒否する変更でも保存できます。 config.toml を自分で編集して場所を変えた場合は、Frost が最初にその場所を使うときに、同じ警告を表示します。
#Frost がバックアップを見つけられない場合
バックアップが Frost の想定する場所にない場合、エラーと frost status に、最後に開いた場所と 3 つの対処法が表示されます。
Your backups were last opened in s3://old-bucket/frost/.
Since then storage.s3.bucket changed from old-bucket to new-bucket.
Do one of these:
put it back: frost config set storage.s3.bucket old-bucket
keep the change: move the entire repository folder (frost.repo, chunks/, snapshots/, and trees/) to s3://new-bucket/frost/
start over there: frost init (your old backups stay where they are)