NASバックアップ
シングルドライブを購入したのでバックアップ方法を考えないといけません。
標準で提供される「履歴差分バックアップ」機能がとってもお気に入りなのですが、なんと全てのフォルダ日時がバックアップを作成した日時になってしまうという個人的には気に入らない仕様でした。差分バックアップ方法は、ext3フォーマットでハードリンク機能を使っているようです。
HDL-AA/Eシリーズ | 個人向けNAS | IODATA アイ・オー・データ機器
バックアップすると、以下の様な感じで構成されます。(記憶が曖昧なので若干違ったかも)
リストアする際には、欲しいbackup日時のdirからコピーすれば取得できます。
#ハードリンクなので実体が見えます。
(アイ・オー・データが提供しているextリーダー:LAN DISK Backup Reader でマウントが出来ます。ちょっと使い辛かったので違うのを僕は利用。※後述)
さて、フォルダの日時が保持されない件はどうしようか?
- 差分バックアップが可能
- フォルダ、ファイル日時保持する
以上の条件を満たすwindowsのソフトはイメージ形式でバックアップを取るものばかりです。バックアップイメージがそのソフトの独自形式なので、なんとなく不安があります。
アイ・オー・データの差分バックアップの様に「extフォーマットのハードリンク利用による差分バックアップの実現」が個人的にはベストという結論に至り、LANDISK標準のバックアップを使うのではなく、独自にシェルスクリプトを作成する事にしました。rsyncコマンドの「--link-dest」オプションを使うと、ハードリンクも作成してくれます。
windowsからはrsyncコマンドは使えないので、Linux環境の準備です。これは、仮想Linuxを作成するのが手っ取り早いです。USB3.0が扱えれば、そこそこの転送速度も期待できます。
仮想環境の準備(Ubuntu)
VMware-playerのubuntuを準備(詳細は別ページで後日記載 ↓)
Ubuntu仮想環境の準備
Ubuntu仮想環境を作る - かずの不定期便ブログ
バックアップの実施
- 本landiskをcifsマウント
- 外付けUSB-HDD(ext4フォーマット)をマウント(勝手にマウントされる)
以上を行った状態で、rsyncで差分バックアップをとることにしました。初回は全データという事とcifsなのでかなり時間がかかりましたが、以降は差分なのでかなり早いです。
★landiskのマウント方法
landiskのIPアドレス:192.168.0.15
作成したlandiskのフォルダ名:disk1
landiskに作ったアカウント名:kazu
$sudo mount -t cifs //192.168.0.15/disk1 /mnt2 -o ro,username=kazu
★ハードリンクを使ったバックアップ方法
バックアップdiskのUSB-HDDは以下の様なdir構成としたい。
rootになる(作業でsudoするのが面倒... 多分良くない行為)
$sudo su -
初回:USB-HDDがmountされたdirで
$mkdir disk1; cd disk1
$mkdir 日時1
$rsync -av /mnt2/ /USB-HDDのmount dir/disk1/日時1 <- source側の最後の"/"がポイント
2回目:
$cd disk1
$mkdir 日時2
$rsync -av --link-dest=../日時1 /mnt2/ /USB-HDDのmount dir/disk1/日時2
3回目:
$cd disk1
$mkdir 日時3
$rsync -av --link-dest=../日時2 /mnt2/ /USB-HDDのmount dir/disk1/日時3
とバックアップしていけば、常に直前のバックアップに対する差分になります。
--link-destオプションで指定する日時を日時1で固定化すればすべて初回に対する差分バックアップになるので、途中のデータが失われてもリストア可能です。
一般的には前者が増分バックアップ、後者が差分バックアップと呼ばれている気がしますが、アイオーデータさんの説明では、増分バックアップを履歴差分バックアップと呼んでいますね。
我が家のLANDISKバックアッププラン
- FreeFileSyncというソフトでLANDISK上の重要なDirをOneDrive配下へコピー(21:00に自動実行されるようにタスクスケジュールに入れました)
- 上記により自動的にOneDriveへ重要なデータは上がる。
- 一か月に一度程度は仮想Linux(ubuntu)を使って,rsyncコマンドで差分バックアップの実行
これで充分です。
以上になります。
※LAN DISK Backup Readerを使わなかった訳
LAN DISK Backup Reader でマウントする際にpartitionがずらーって並ぶのですが、うちの環境だと数が多いのと番号でしか示してくれないので、どれがターゲットなのか分かりづらかったです。なので、フリーソフトの「Ext2 Volume Manager」 を使っています。これは、割り当てられているドライブレターやファイルフォーマットが表示されるので、どれがバックアップdiskなのかすぐに分かります。ドライバが競合するのか、これを入れた後、LAN DISK Backup Readerは使えなくなりました( 一一)。
これが「Ext2 Volume Manager」でマウントする前でターゲットが分かりやすい!
Linux仮想環境の構築は別の機会に紹介します。ググった方が親切に記載があるので分かりやすいですが、いくつか、はまった点があったので、その辺を詳しく書きたいと思います。また、LANDISKが立ち上がらなくなった時の為の救済策の準備とHDD入れ替えの布石でもあります( *´艸`)