NTFS の領域にLinux の権限付きでバックアップ

前のエントリでバックアップをとっていますが,そもそもリモートのLinux マシンのHDD に空きが足りなくなったのでWindowsNTFS 領域に,権限が落ちない様にtar で取得しました.しかし,1度だけならともかく毎日バックアップをとろうと思うと時間がかかりすぎます.
rsync差分バックアップLinux の権限を残したままで行えるようにしてみました.

方法は,WindowsNTFS 領域にdd でバックアップ容量以上のファイルを作成し,ext3 でフォーマット,ループバックマウントを行ない,その中にバックアップを行ないました.

先ずは,Windows 共有のmount
Nautilus でmount すると,gvfs でよく解らないのでコンソールから普通にmount します.

% sudo smbmount //cifsserver/sharepoint /media/cifs -o user=cifs username

dd します.バックアップ対象が150GB 程あるので,今回はとりあえず200GB

% sudo dd if=/dev/zero of=/media/cifs/acer-backup.dd bs=1M count=204800

遅いー.数時間経っても4G とかなかなか処理が進みません
- chrysocome.net - dd for windows
http://www.chrysocome.net/dd
Windows に導入.

Virtual devices
/dev/zero
/dev/random

仮想デバイスとして,/dev/zero, /dev/random があるので,これを使われてもらいます.これなら数分で終わりました.このときは実はfat で4GB しか出来てなかった.実際は数時間?放置してるうちに終わったので詳細不明.

> dd if=/dev/zero of=d:\acer-backup.dd bs=1G count=200

ここからはLinux に戻ってext3 で初期化して,ループバックマウントします.mkfs には20分程かかりました.

% sudo mkfs.ext3 /media/cifs/acer-backup.dd
mke2fs 1.41.11 (14-Mar-2010)
/media/cifs/acer-backup.dd is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
262144 inodes, 1048572 blocks
52428 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1073741824
32 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
% sudo mount -o loop /media/cifs/acer-backup.dd /media/dd
% sudo chmod 777 /media/dd

後は普通にrsync

% rsync -av ~ /media/dd

次からは,--detele option を付ける感じでしょうか

% rsync -av --delete ~ /media/dd

とりあえずこれでext3 にバックアップは取れるようになったけど,NTFS じゃなくてLinux のFS にbackup とれるようにHDD 増設したいですね….

追記)
NTFS と思い込んでましたが,実はこの領域はFAT でした.なので,dd で4GB ちょいしかファイル作れていなくrsync でNo space left on device となっていましたorz
convert コマンドでNTFS に変換することも考えましたが,データが失われるのが怖いのでLinux マシンへのHDD 増設にHDD 買ったと時に先ずはこっちのデータ移行してNTFS に変換しようと思います….

追記2)
改めてNTFS 領域で確認.200GB 問題なく利用できます.
dd は放置してたので時間不明.mkfs は20分程かかりました.