今まで僕はUbuntuのバックアップは、「SBackup」を使っていたけど、OSの再インストールの度にインストールして設定するのがめんどくさくなってきたし、デフォルトでインストールされている「Deja Dup」もバックアップに「GnuPG」※1を使用しているようなので、もし「Deja Dup」が使えなくなったらバックアップファイルを戻すときに面倒な作業が増えるし、結局は、保持しておきたいデータがTarで固まっていればいいわけで、そのほうが解りやすいし、使いやすいし、とういう事でUbuntuのバックアップもtarでやろうかと思います(ちなみにSBackupでのバックアップファイルはtarで出来ていた)。ソフトウエア使ってバックアップするのもいいんだけど、結局は時代の流れとかで変わっていったり、余計に手間がかかったりとかで、一旦、原点回帰しようかと思います。
※1:GnuPGは、ファイルを「公開鍵暗号方式暗号・復号化」する事ができて、さらに、「電子署名」をする事が出来る。
という事で、ローカルのUbuntuのバックアップを以下のようにしようかと思う。
- バックアップサイクル:月初に1回
- 世代管理:3世代(3ヶ月分)
- 差分バックアップ:しない
- バックアップ先:マウントしているNAS上
- バックアップ方法:tar
僕の場合、OSになにか不具合が出たときは、HDDをフォーマットしてOSを再インストールして、取得していたバックアップから必要なものだけを戻すようにしているので、戻しに必要になりそうな最低限のバックアップをしています。
対象は以下のようにする
/home
/etc
圧縮時オプション(パーミッションを保持する)
tar czvplf
解凍時オプション(パーミッションを保持する)
tar pxvf
tarオプション(p,l)
-p, –same-permissions, –preserve-permissions 許可情報を全て抽出する
-l, –one-file-system ローカルなファイル・システムに限定してアーカイブを作成する
で、ココからは実際に動かすものを作るよ
【月次バックアップ–世代管理:3世代「シェル本体」】
/hoge/hoge/tool/monthly_bkup.sh にシェルを作成する。
【cronの設定–第1日曜日にバックアップシェルを実行】 crontab -e で下記のように設定する。