incremental backups for your device with rdiff-backup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Is anybody interested in incremental backups for their devices?
If so, please look at rdiff-backup: http://www.nongnu.org/rdiff-backup/
I found it quite easy to use and powerful.
Most attractive features from my point of view are:
- supports incremental backups and restores
-  Stores only binary diffs, so storage and bandwidth efficient
- Easy to configure and use
- Works on Unix/Linux, Windows, MAC OS X

Now a bit of configuration details :

Requirements:
device to backup (I used N800)
PC with Linux or Windows
ssh connection from PC to device
Packages for N800:
Python (I used maemo python2.5 build from bora repository)
http://www.bartosh.org/files/librsync1_0.9.7-1_armel.deb
http://www.bartosh.org/files/rdiff-backup_1.0.5-1.maemo1_armel.deb
Exactly the same version (1.0.5) Rdiff-backup installed on the PC

My Testing environment:
device: N800
Old Redhat9-based system as a backup storage.
I used this howto as a configuration guide: http://www.howtoforge.net/linux_rdiff_backup

My configuration files:
PC side:
Ssh configuration:
~/.ssh/config
host n800-backup
hostname 192.168.255.2
user rdiff-backup
identityfile ~/.ssh/id_dsa
compression yes
protocol 2

Backup shell script:
#!/bin/sh
time rdiff-backup --terminal-verbosity 5 --exclude /dev --exclude /sys --exclude
 /proc --exclude /initrd --exclude /mnt/ --exclude /media  n800-backup::/ ./backup

N800 side:
# grep rdiff-backup /etc/passwd
rdiff-backup:!:30003:100::/home/rdiff-backup:
# grep rdiff-backup /etc/sudoers
rdiff-backup ALL = NOPASSWD: /usr/bin/rdiff-backup --server --restrict-read-only /
# cat /home/rdiff-backup/.ssh/authorized_keys
command="sudo /usr/bin/rdiff-backup --server --restrict-read-only /",no-port-forwarding,no-X11-forwarding,no-pty ssh-dss <public key>

Couple of examples:
Usual backup session:
[ed at ed n800]$ ./backup.sh
Executing ssh -C n800-backup rdiff-backup --server
Unable to import module xattr.
Extended attributes not supported on filesystem at /
-----------------------------------------------------------------
Detected abilities for source (read only) file system:
  Access control lists                         Off
  Extended attributes                          Off
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
Unable to import module posix1e from pylibacl package.
ACLs not supported on filesystem at /
Unable to import module xattr.
Extended attributes not supported on filesystem at backup/rdiff-backup-data/rdiff-backup.tmp.0
Unable to import module posix1e from pylibacl package.
ACLs not supported on filesystem at backup/rdiff-backup-data/rdiff-backup.tmp.0
-----------------------------------------------------------------
Detected abilities for destination (read/write) file system:
  Characters needing quoting                   ''
  Ownership changing                           Off
  Hard linking                                 On
  fsync() directories                          On
  Directory inc permissions                    On
  High-bit permissions                         On
  Access control lists                         Off
  Extended attributes                          Off
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
Starting increment operation / to backup
Processing changed file .
Incrementing mirror file backup
Processing changed file etc
Incrementing mirror file backup/etc

<a lot of linex skipped>

Processing changed file var/log/wtmp
Incrementing mirror file backup/var/log/wtmp
Processing changed file var/tmp
Incrementing mirror file backup/var/tmp
                                                                                                                  
real    2m38.161s
user    0m8.470s
sys     0m0.310s

List of incremental backups:
[ed at ed n800]$ rdiff-backup --list-increments ./backup
Found 7 increments:
    increments.2007-05-06T21:28:16+03:00.dir   Sun May  6 21:28:16 2007
    increments.2007-05-07T00:18:33+03:00.dir   Mon May  7 00:18:33 2007
    increments.2007-05-07T00:22:19+03:00.dir   Mon May  7 00:22:19 2007
    increments.2007-05-07T00:30:42+03:00.dir   Mon May  7 00:30:42 2007
    increments.2007-05-07T22:45:24+03:00.dir   Mon May  7 22:45:24 2007
    increments.2007-05-09T21:25:18+03:00.dir   Wed May  9 21:25:18 2007
    increments.2007-05-20T18:57:33+03:00.dir   Sun May 20 18:57:33 2007
Current mirror: Sat Jun  2 23:11:29 2007
                                                    
List of changed files since 1 week:                                                              
[ed at ed n800]$ rdiff-backup --list-changed-since 1W ./backup |wc -l
    311

Enjoy!

-- 
Best regards,
Ed



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Big List of Linux Books]    

  Powered by Linux