>Максим, можете немножко поподробней про это написать? Как вы организовали на новом
>сервере? $ df Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/ad4s1a 1012974 121266 810672 13% /
/dev/ad6s1f 50777034 13101540 33613332 28% /home
/dev/ad4s1d 1012974 1162 930776 0% /tmp
/dev/ad4s1e 5077038 1668088 3002788 36% /usr
/dev/ad4s1g 50777034 5912986 40801886 13% /usr/local
/dev/ad4s1h 78512008 29292488 42938560 41% /usr/var
/dev/ad6s1a 1012974 515550 416388 55% /backup
/dev/ad4s1f 50777034 12895954 33818918 28% /backup/home
/dev/ad6s1d 1012974 1080 930858 0% /backup/tmp
/dev/ad6s1e 5077038 617470 4053406 13% /backup/usr
/dev/ad6s1g 50777034 5599944 41114928 12% /backup/usr/local
/dev/ad6s1h 78512008 7423042 64808006 10% /backup/usr/var
$ cat /etc/fstab
/dev/ad4s1b none swap sw 0 0
#/dev/ad6s1b none swap sw 0 0
/dev/ad4s1a / ufs rw,noatime 1 1
/dev/ad6s1f /home ufs rw,userquota,noatime 2 2
/dev/ad4s1d /tmp ufs rw,noatime,nosuid,nodev,nosymfollow 2 2
/dev/ad4s1e /usr ufs rw 2 2
/dev/ad4s1g /usr/local ufs rw,userquota,noatime 2 2
/dev/ad4s1h /usr/var ufs rw,noatime,nosuid,nodev 2 2
/dev/ad6s1a /backup ufs ro 1 1
/dev/ad4s1f /backup/home ufs ro 2 2
/dev/ad6s1d /backup/tmp ufs ro 2 2
/dev/ad6s1e /backup/usr ufs ro 2 2
/dev/ad6s1g /backup/usr/local ufs ro 2 2
/dev/ad6s1h /backup/usr/var ufs ro 2 2
Ночью запускается скрипт rsync_backup.sh
18 4 * * * /usr/local/mirror/ftp_fmirror.sh 2>&1 >> /usr/local/mirror/fmirror.log
Скрипт:
#!/bin/sh
date
/usr/local/bin/create_dir_list.pl / > /backup2/sys_backup/dir_list.txt
/sbin/mount -u -w /backup
/sbin/mount -u -w /backup/home
/sbin/mount -u -w /backup/tmp
/sbin/mount -u -w /backup/usr
/sbin/mount -u -w /backup/usr/local
/sbin/mount -u -w /backup/usr/var
/usr/local/bin/rsync -a -v --delete --max-delete=600 --hard-links \
--delete-excluded --exclude-from=/etc/rsync_backup.exclude / /backup
#--backup --backup-dir=/backup_ \
RETCODE=$?
if [ $RETCODE -ne 0 ]; then
echo "Err code=$RETCODE"| mail -s "FATAL RSYNC BACKUP" admin@test.ru
fi
echo RET: $RETCODE
/bin/chmod 0700 /backup
/sbin/mount -u -r /backup
/sbin/mount -u -r /backup/home
/sbin/mount -u -r /backup/tmp
/sbin/mount -u -r /backup/usr
/sbin/mount -u -r /backup/usr/local
/sbin/mount -u -r /backup/usr/var
date
В rsync_backup.exclude список того что не нужно зеркалировать, например:
/usr/var/backup/
/backup/
/cdrom/
/mnt/
/proc/
/var/log/
/var/tmp/
/usr/sup/
/usr/obj/
/usr/src/
/usr/tmp/
/usr/ports/
/usr/share/doc/
/usr/share/dict/
/usr/local/alertmon/toplogs/
/usr/local/apache/logs/
/usr/local/pgsql/data/base/
/usr/local/pgsql/data/global/
/usr/local/pgsql/data/pg_xlog/
/usr/local/pgsql/data/pg_clog/
/var/run/log/
create_dir_list.pl - скрипт для создания списка всех директорий в системе, чтобы можно было восстановить дерево исключенных для rsync директорий (скачать можно здесь http://www.opennet.me/dev/fsbackup/dirlist/)
У вышеприведенного rsync_backup.sh скрипта выключена возможность отдельного сохранения изменившихся или удаленных файлов (--backup --backup-dir=/backup_), так же есть идея написать скрипт который будет преобразовывать fstab на backup разделе к виду не требующему передергивания диска.