cat /mnt/backup/.ssh/id_dsa.pub | ssh backup@domainname.ru "cat >> ~/.ssh/authorized_keys2"Не забыть выставить chmod 700 .ssh && chmod 400 .ssh/authorized_keys2 на клиенте. По дефолту у обычного пользователя нет прав копировать /etc/ и прочее, поэтому пользователю backup нужно дать доступ к rsync, с помощью которого rsnapshot синхронизирует снимки. В /etc/sudoers добавляется:
backup ALL=NOPASSWD: /usr/bin/rsyncОбертка необходима потому, что при указании в rsnapshot.conf опции rsync_long_args --rsync-path="/usr/bin/sudo /usr/bin/rsync" она вообще не может понять чего от нее хотят — отсюда и велосипед с враппером /usr/bin/sudo /usr/bin/rsync_original $@
backup ALL=NOPASSWD: /usr/bin/rsync_original
Примерный rsnapshot.conf (не забывать про таб между опцией и значением):
srv:~# grep -v -e "^#" /etc/rsnapshot.conf | sed '/^$/d'Сказать крону когда запускать rsnapshot (интервалы должны соответствовать тому, чтобы перед выполнением следующей задачи успевала отрабатывать предыдущая):
config_version 1.2
snapshot_root /mnt/nas/backup/
cmd_rm /bin/rm
cmd_rsync /usr/bin/rsync
cmd_ssh /usr/bin/ssh
cmd_logger /usr/bin/logger
interval hourly 6
interval daily 7
interval weekly 4
interval monthly 3
verbose 2
loglevel 3
logfile /var/log/rsnapshot
lockfile /var/run/rsnapshot.pid
exclude /dev
exclude /proc
exclude /sys
exclude /mnt
exclude /var/cache/apt
exclude /usr/src
exclude /home/ftp
exclude /usr/ports
exclude /usr/local/squid
exclude /usr/obj
exclude /home/user/.cache/google-chrome
exclude /home/user/.config/google-chrome
exclude /home/user/.opera
exclude /home/user/.mozilla
exclude /home/user/.macromedia
exclude /home/user/.wine
# srv0
backup / srv0.domainname.ru/
backup /boot/ srv0.domainname.ru/
backup /var/ srv0.domainname.ru/
backup /home/ srv0.domainname.ru/
# srv1
backup backup@srv1.domainname.ru:/ srv1.domainname.ru/
backup backup@srv1.domainname.ru:/usr/ srv1.domainname.ru/
backup backup@srv1.domainname.ru:/var/ srv1.domainname.ru/
backup backup@srv1.domainname.ru:/home/ srv1.domainname.ru/
# user1
backup backup@user.domainname.ru:/ srv3.domainname.ru/
backup backup@user.domainname.ru:/boot/ srv3.domainname.ru/
backup backup@user.domainname.ru:/home/ srv3.domainname.ru/
srv:~# cat /etc/crontab | grep rsnap
0 */4 * * * root /usr/bin/rsnapshot hourly
40 23 * * * root /usr/bin/rsnapshot daily
20 23 * * 0 root /usr/bin/rsnapshot weekly
00 23 1 * * root /usr/bin/rsnapshot monthly
No comments:
Post a Comment