linkstationのデータバックアップ その二
リンクステーションのデータバックアップ その一 - huruyosi’s blog の続きです。
s3の動きを試しました。
アップロードの方法
このコマンドで一発です。
$ s3cmd sync --encoding=UTF-8 --recursive --delete-removed /mnt/array1/ s3://バケット名/
- sync … 追加 / 更新されたファイルを検地してアップロードします。
- --encoding=UTF-8 … 漢字を使ったファイル名の文字化け対応です。
- --recursive … サブディレクトリを再帰的に処理します。
- --delete-removed … リンクステーションで削除したファイルがあれば、s3のファイルも削除します。
- /mnt/array1/ … バックアップ対象のディレクトリです。
- s3://バケット名/ … バックアップ先です。
Glacier へのアーカイブ
ライフサイクルを設定
バスケットのプロパティからライフサイクルを指定設定します。
- オブジェクトの操作 … 「アーカイブのみ」を指定します。
- Glacier ストレージクラスにアーカイブする … 「0」日後を指定します。
アーカイブの状態を確認
AWSのコンソールからS3のバケットの中を見たときに「ストレージクラス」で状態を判断します。 「スタンダード」となっていれば、アーカイブされていない状態です。 「Glacier」となっていればアーカイブされた状態です。
アーカイブ後に s3cmd sync を行うと
アーカーブされた状態でもs3のオブジェクトとして扱われるので、リンクステーションで 追加 / 更新 されたファイルがアップロードされます。
一番の懸念だったアーカイブ後に追加 / 更新 されたファイルを検知する方法がもっとも気になっていましたが、s3cmd sync
が差分を検知することが分かり安心しました。