/ Published in: Bash
URL: webschuur.com
This script pulls in files with rsync, storing them locally with hardlinks for unchanged, and real files for changed -files.
- KEY=$HOME/.ssh/iddsapasswdless -- an id_rtsa key without a password. --adding this to remote authorized keys must be done with care: you will prbably want to whitelist one IP-adress.
- RHOST=ssh.example.com -- the host where to connect to using ssh, or rsync.
- RUSER=example-username -- the username on the host. Must have read access in the SOURCE dit (see below).
- LPATH=$HOME/Archive/example-com/ -- where to place the backups
- RPATH=/var/www/example-com/ -- the to-be-backuped dir.
You probably want to add this as script (backup_example-com.sh) in ~/bin, or any other directory available in $PATH. And then add it to crontab.
See a howto here: http://troy.jdmz.net/rsync/index.html
Expand |
Embed | Plain Text
#!/bin/sh RSYNC=/usr/bin/rsync SSH=/usr/bin/ssh KEY=$HOME/.ssh/id_dsa_passwdless RUSER=foo RHOST=ssh.example.com RPATH=/var/www/ LPATH=$HOME/archive/example-com/ date=`date "+%Y-%m-%dT%H:%M:%S"` $RSYNC -v -n -az -e "$SSH -i $KEY" --link-dest=$LPATH/current $RUSER@$RHOST:$RPATH $LPATH/back-$date rm $LPATH/current && ln -s $LPATH/back-$date $LPATH/current
You need to login to post a comment.
