rdiff - простое инкрементальное резервное копирование в линукс
Linux / Программное обеспечение
Установка rdiff довольна проста, можно обратится к официальной документации:
-
rdiff-backup-
rdiffweb |
demoМы же провели эксперимент и оказалось что на принимающем сервере достаточно установить rdiffweb, rdiff-backup установится вместе с ним
После чего достаточно установить rdiff-backup на сервер который мы хотим бекапить.
(есть вариант все держать на одном сервере, только в чем смысл?)Установка на Ubuntu/Debianapt install lsb-release
curl -L https://www.ikus-soft.com/archive/rdiffweb/public.key | gpg --dearmor > /usr/share/keyrings/rdiffweb-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/rdiffweb-keyring.gpg] https://nexus.ikus-soft.com/repository/apt-release-$(lsb_release -sc)/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/rdiffweb.list
apt update
apt install rdiffweb
взято
тут, так-же у ребят описаны другие возможные варианты установки.
Теперь можно подключится к веб-интерфейсу, у вас должен появиться доступ к Rdiffweb из браузера по адресу
http://IP_SRV:8080
Для установке на сервере с которого необходимо делать бекап:
apt update
apt install rdiff-backup
Чтобы выполнить резервное копирование с помощью rdiff-backup, SSH-сервер должен иметь возможность установить SSH-соединение, которое rdiff-backup может использовать в качестве безопасного канала для передачи данных.
Настроим аутентификацию без пароля (SSH без пароля).
ssh-keygen -f ~/.ssh/id_rsa -N ""
ssh-copy-id user@10.10.10.10
Запуск резервного копирования
С клиентского компьютера запустите резервное копирование ваших файлов на сервер, используя общую структуру:
rdiff-backup <source> ::<dest>
Где:
<source>
определяет расположение локальных файлов для резервного копирования<dest>
определяет место хранения на сервере
Например:
rdiff-backup /home/ user@10.10.10.10::/backups/home
Так-же не забудьте отредактировать список пользователей и в частности сопоставление каталога.
Восстановление файлов можно произвести консольное, либо достать необходимые файлы/каталоги из веб панели, на необходимую дату.
Несколько примеров:Допустим, вы хотите восстановить файл в том состоянии, в котором он был 4 дня назад:
$ rdiff-backup --restore-as-of 4D /run/media/tux/foo.txt ~/foo_4D.txt
Или, может быть, вам нужна последняя версия:
$ rdiff-backup --restore-as-of now /run/media/tux/foo.txt ~/foo_4D.txt
Так-же можно использовать
cp и
scp.
Для локального диска нужно написать, например, такое:
$ cp /run/media/tux/my_backup_drive/Documents/example.txt ~/Documents
Для удалённого сервера:
$ scp tux@example.com::/my_backup_drive/Documents/example.txt ~/Documents
Ниже несколько изображений панели: