The rsync command can preserve hard links and make the exact copy of /raid6/rsnapshot/ directory to a remote server using the following syntax. This is useful for making offsite backups or copy existing backups to a usb hard disk:
rsync -az -H --delete --numeric-ids /path/to/source server2:/path/to/dest/
rsync -az -H --delete --numeric-ids /path/to/source 192.168.1.5:/path/to/dest/
rsync -az -H --delete --progress --numeric-ids /path/to/source 192.168.1.5:/path/to/dest/
- -a : Archive mode (i.e. recurse into directories, and preserve symlinks, file permissions, file modification times, file group, file owner, device files & special files)
- -z : Compress file data during the transfer
- -H : Preserve hard links (i.e. copy hard links as hard links)
- --delete : Delete extraneous files from the receiving side (ones that aren't on the sending side), but only for the directories that are being synchronized i.e. keep exact replica of your /raid6/rsnapshot directory.
- --numeric-ids : Transfer numeric group and user IDs rather than using user and group names and mapping them at both ends.
- --progress : Show progress during transfer.
Rsync copy hard links
In short type the following command as root user to copy /raid6/rsanpshot to another backup server named backupserver2:
# rsync -az -H --delete --numeric-ids /raid6/rsanpshot backupserver2:/backups/
You can pull backups too from backupsrver2 as follows:
# rsync -az -H --delete --numeric-ids backupserver1:/raid6/rsanpshot /backups/
Smaller size directories can be dumped to usb 2.0/3.0 or eSata external hard drives using the same syntax. First, mount usb hard drive:
# mount /dev/sdXY /mnt/usbdisk
Next, use the rsync command as follows:
# rsync -az -H --delete --numeric-ids /raid6/rsanpshot /mnt/usbdisk/