Table des matières

Howto rsync

Copie de répertoires locaux

# -a : archive
# -v : verbose
# -z : compress

rsync -avz /src /dest
  

Copie de répertoires distants

# -e : remote shell to use  

# To Server - Copy files
rsync -avz -e ssh /src user@server:/dest/

# From Server - Copy files
rsync -avz -e ssh user@server:/source/ /dest/

Copie de fichiers en fonction d'un masque

# --include / --exclude
# Copie de tous les fichiers jpg d'un répertoire vers un autre
rsync -av --include='*.jpg' --include="*/" --exclude="*" ./photos/ ./backup/

Backup différentiel

/etc/cron.daily/backup

#!/bin/bash

DAY=$(date +%Y-%m-%d)

if [ -e /location/to/backup/incr/$DAY ] ; then
  rm -fr /location/to/backup/incr/$DAY
fi

rsync -a --delete --inplace --backup --backup-dir=/location/to/backup/incr/$DAY /folder/to/backup/ /location/to/backup/full/ &> /dev/null

Exemple concis :

rsync -av --delete --inplace --backup --backup-dir=./folder.inc/$DAY ./folder/ ./folder.full/

Liens

https://wiki.archlinux.org/index.php/Rsync

http://linux.die.net/man/5/rsyncd.conf

http://www.delafond.org/traducmanfr/man/man1/rsync.1.html

http://www.demongeot.biz/tutos/Rsync.html

http://maddhat.com/differential-backup-using-rsync

http://www.howtoforge.com/backing-up-with-rsync-and-managing-previous-versions-history