otakup0pe.dupwrap
dup
licity wrap
per
このAnsibleロールは、duplicityバックアップツールの周りにシンプルなラッパーをインストールします。このツールには2つの操作モードがあります - Amazon S3へのバックアップ、または外部ボリューム上の暗号化されたMacディスクイメージへのバックアップです。dupwrap
ツールは、単一のホスト上で複数のバックアッププロファイルをサポートします。サーバーのバックアップにはroot
ユーザーとして、ワークステーションのバックアップには別のユーザーとして実行できます。
S3モード
指定されたS3バケットにGPG暗号化されたバックアップをアップロードします。提供されたAPIキーに関連付けられたIAMユーザーは、読み取り/書き込みの権限が必要です。
Mac USBモード
外部ボリュームに暗号化されたボリュームを作成/維持します。二重の暗号化になりますが、あまり気にしていません。このモードはまだスケジュールされたバックアップをサポートしていません。
変数
デフォルト値を持つ変数です。この値を使うことで、ソースと宛先を追加するだけでサーバー全体のバックアップが簡単になります。
dupwrap_user
はデフォルトでroot
dupwrap_group
はデフォルトでroot
dupwrap_config_prefix
はデフォルトで/etc
dupwrap_bin_prefix
はデフォルトで/usr/local/bin
ですdupwrap_cron
はデフォルトでfalse
- cronジョブを設定するには有効にしますdupwrap_cron_verbose
はデフォルトでfalse
ですが、これを使うと多くの情報を表示できますdupwrap_n_full
はデフォルトで3
でフルバックアップの数を制御しますdupwrap_remove_older
はデフォルトで12
で、指定された月数より古いバックアップを削除しますdupwrap_full_older
はデフォルトで30D
で、フルバックアップを強制する頻度を決定します
複数のバックアッププロファイルを定義できます。これらはすべて dupwrap
という名前のディレクトリに保存されます。dupwrap_backups
変数はバックアッププロファイルを定義するために使用されます。この変数には、グローバル設定がデフォルトのyamlオブジェクトのリストが含まれています。
passphrase
(デフォルトはdupwrap_passphrase
) は暗号化ルーチンに使用するパスワードを指定しますaws_access_key
(デフォルトはdupwrap_aws_access_key
) はS3バックアップに必要なAWSアクセスキーIDですaws_secret_key
(デフォルトはdupwrap_aws_secret_key
) はS3バックアップに必要なAWSシークレットアクセスキーですbucket
(デフォルトはdupwrap_bucket
) は使用するS3 URIで、S3バックアップに必要です
Mac/USBへのバックアップには次のインスタンス変数を渡す必要があります。
dupwrap_unencrypted_volume
は使用するマウントされた外部ボリュームの名前ですdupwrap_encrypted_volume
は作成する暗号化されたボリュームの名前ですdupwrap_encrypted_volume_size
はボリュームのサイズで、デフォルトは256m
です
dupwrap
スクリプト
このスクリプトは duplicity
のインターフェースです。また、cron
で使用する場合は、これが呼び出されます。すべてのMac/USBのインタラクションではパスワードを要求します。
オプション
これらのオプションはデフォルトの動作を変更します。いくつかのアクションには指定されたプロファイルが必要です。
-d
をMacバックアップで指定すると、バックアップが完了した後もマウントされたままになります。-v
はデバッグ情報を出力します-f
は永遠に物を削除するときの確認をスキップします-c
は設定ファイルが保存されるディレクトリを指定します。デフォルトはdupwrap_config_prefix
に設定されています-p
はバックアッププロファイルを指定します。-t
はファイルを復元する時刻を指定します。このオプションがなぜ存在するのか分かりませんが、おそらく私がコンピュータが苦手だからでしょう。
アクション
backup
はバックアップを開始します。プロファイルが指定されていない場合は、見つかったすべてのバックアップが実行されます。list
は最新のバックアップのすべてをリスト表示しますrestore_file
は指定された場所に特定のファイルを復元しますrestore_file <file> <dest>
で最新のものを復元します
status
バックアップセットの基本情報を表示しますprune
古いバックアップを削除します。プロファイルが指定されていない場合は、見つかったすべてのバックアップが削除されます。
macOSでは、いくつかの追加アクションがあります。
init
は暗号化されたディスクイメージを作成しますpurge
は暗号化されたディスクイメージを削除しますmount
は暗号化されたディスクイメージをマウントしますunmount
は暗号化されたディスクイメージをアンマウントします
スワップヘルパー
スワップヘルパースクリプト(dupwrap-swap-helper
)は、pre_script
と post_script
のジョブ変数と一緒に使用するためのものです。引数としてpre
またはpost
のいずれかを渡して呼び出されます。
ライセンス
作者
このAnsibleロールは、データの衰退にうんざりしているため、Jonathan Freedmanによって作成されました。