Резервный диск монтируем как /backup в read-only режиме.
По крону еженощно запускаем скрипт следующего содержания:
/sbin/mount -u -w /backup # пепреводим раздел в rw режим, mount "-o remount,rw /backup" для Linux
/usr/bin/rsync -a --delete --delete-excluded --max-delete=200 \
--exclude-from=/etc/ex_files_list.txt / /backup
RETCODE=$?
if [ $RETCODE -ne 0 ]; then
echo "Err code=$RETCODE"| mail -s "RSYNC BACKUP ERROR" alert@test.ru
fi
/sbin/mount -u -r /backup # раздел обратно в ro, mount "-o remount,ro /backup" для LinuxЕсли backup-диск большой, лучше вести две полные копии, на случай краха во время бэкапа (или см. опцию --backup);
При бэкапе на другой сревер:
rsync [...опции как выше] --compress --bwlimit=100 --timeout=120 \
-e ssh source/ login@backuphost:/backup/node1
Список файлов для исключения из бэкапа (ex_files_list.txt):
/backup
/mnt
/proc
/tmp
/var/log
/usr/obj
/usr/src
/usr/tmp
/usr/ports
/usr/local/apache/logs
URL: http://www.opennet.dev/guide.shtml#backup
Обсуждается: http://www.opennet.dev/tips/info/687.shtml