Бэкап с подстраховкой

Как показывает практика, обычного резервного копирования данных (когда бэкап храниться на той же машине, что и копируемая информация) может быть недостаточно. Поэтому, если Вы очень дорожите информацией, хранимой на сервере, лучше перестраховаться и сделать двойной бэкап. Если кто-то решит, что средств web-панели для резервного копирования будет достаточно, пусть вспомнит историю с Hosting.ua.

Конечно, если у Вас есть два сервера, доступных по сети, можно использовать и web-панель, указав в качестве места хранения бэкапа удаленную машину. Но если по сети доступен только сервер, а Вы хотите хранить бэкапы на своем ноутбуке, например, то Вам нужно хотя бы раз в два-три дня копировать данные с сервера. Чтобы автоматизировать этот процесс можно использовать следующий прием.

В cron на Вашем компьютере добавляем задание:

@reboot rsync -vrlptc --delete youruser@remote.server.host:/path/to/data /path/to/local/backup

Для выполнения данной команды необходима авторизация на сервере, соответственно, нужно либо вводить пароль, что сделать будет невозможно, либо использовать ключи. Создаем ключ:

ssh-keygen -t rsa

Копируем ключ на удаленную машину:

ssh-copy-id -i ~/.ssh/id_rsa.pub youruser@remote.server.host

На сервере нужно проверить конфигурацию sshd, в ней должна быть включена авторизация через ключи:

# Should we allow Identity (SSH version 1) authentication?
RSAAuthentication yes
 
# Should we allow Pubkey (SSH version 2) authentication?
PubkeyAuthentication yes
 
# Where do we look for authorized public keys?
# If it doesn't start with a slash, then it is
# relative to the user's home directory
AuthorizedKeysFile    .ssh/authorized_keys

Не забудьте перезапустить ssh демона, если Вы изменили настройки. Если всё готово, то при каждом запуске Вашего компьютера, должно происходить копирование на него бэкапа. Таким образом Вы всегда будете иметь свежую копию важных данных с сервера.