Создание файла конфигурации для резервного копированияСкрипт создания бэкапаСкрипт полного восстановления из бэкапаСоздание резервной копииВосстановление резервной копииДобавление/удаление директорий в резервной копииАвтоматизированное создание резервных копий
FSBACKUP - утилита для создания инкрементного или полного бэкапа отдельных файлов или целой файловой системы.
Для установки утилиты перейдите в сеанс пользователя root:
su -
и выполните команду:
dnf install fsbackup
После установки программа будет находиться по пути /usr/local/fsbackup/.
Примеры конфигурационных файлов и документация расположены в каталоге /usr/share/doc/fsbackup/.
В конфигурационном файле перечислены настройки, которые используются во время процесса резервного копирования, а также необходимые файлы или директории, которые впоследствии будут сохранены в резервной копии.
Скопируйте пример конфигурационного файла и отредактируйте его. Таким образом можно создавать столько конфигураций резервного копирования, сколько требуется.
Обратите внимание, что каждый конфигурационный файл должен иметь уникальное имя, отличающееся от других конфигурационных файлов, а также отдельный СУЩЕСТВУЮЩИЙ на момент запуска процесса бэкапа каталог сохранения резервной копии.
cp /usr/share/doc/fsbackup/cfg_example /usr/local/fsbackup/<имя_конфигурационного_файла> nano /usr/local/fsbackup/<имя_конфигурационного_файла>
В скопированном примере конфигурационного файла все поля имеют пояснения на русском языке. Далее приведены обязательные настройки, которые необходимо отредактировать:
Для наглядности создадим еще один конфигурационный файл для папок пользователей:
cp /usr/local/fsbackup/cfg_example /usr/local/fsbackup/cfg_users nano /usr/local/fsbackup/cfg_users
Отредактируем необходимые поля.
$cfg_backup_name = "users"; # имя бэкапа $cfg_save_old_backup = 0; # не сохранять бэкап $cfg_backup_style = "full_backup"; # создание полного бэкапа $cfg_local_path = "/mnt/personal"; # директория создания бэкапов $cfg_cache_dir = "/srv/cache"; # директория для помещения текущих хэшей # Список файлов и условий для помещения в бэкап __DATA__ /srv/user1 /srv/user2
Далее отредактируйте скрипт создания бэкапа. Создайте для каждого конфигурационного файла свой файл создания бэкапа путем копирования исходного скрипта. Данный файл также имеет пояснения на русском языке.
cp /usr/local/fsbackup/create_backup.sh /usr/local/fsbackup/create_backup_users.sh
Отредактируйте необходимые параметры:
nano /usr/local/fsbackup/create_backup_users.sh
Самым главным параметром является config_files, в котором перечислены необходимые конфигурационные файлы.
config_files="cfg_users" # укажите необходимые конфигурации файлы для создания по ним бэкапа
Перед запуском бэкапа убедитесь, что скрипт запуска и конфигурационный файл расположены в одной папке вместе perl-скриптом fsbackup.pl.
Для полного восстановления скопируйте и отредактируйте скрипт fsrestore.sh, расположенный в каталоге usr/local/fsbackup/scripts/.
cp /usr/local/fsbackup/scripts/fsrestore.sh /usr/local/fsbackup/scripts/fsrestore_users.sh nano /usr/local/fsbackup/scripts/fsrestore_users.sh
backup_name="users" # имя бэкапа backup_path="/mnt/personal/" # директория где находится бэкап restore_path="/ " # корневая директория куда будут помещены данные, установите /, т.к распаковка происходит с полными путями
Для каждой конфигурации создайте свой скрипт восстановления аналогичным образом.
Дополнить архив новыми файлами или создать бэкап:
/usr/local/fsbackup/create_backup_users.sh
Для восстановления отдельных файлов из бэкапа воспользуйтесь утилитой tar.
В текущем примере архив бэкапа находится по пути /mnt/personal.
После распаковки переместите извлеченный файл в нужный каталог.
Чтобы восстановить все файлы из бэкапа, воспользуйтесь ранее созданным скриптом fsrestore_<...>.sh. Помните, что файлы, созданные после процедуры бэкапа, останутся, а удаленные или измененные файлы вернутся в исходное состояние. В текущем примере скрипт восстановления назван fsrestore_users.sh
/usr/local/fsbackup/scripts/fsrestore_users.sh
Для добавления новых директорий в бэкап отредактируйте файл его создания.
Например, добавим пользователя user3 в бэкап users. Для этого добавим папку с данными user3 в конец секции __DATA__. Для удаления директорий из бэкапа удалите путь к директории из файла.
… __DATA__ /srv/user1 /srv/user2 /srv/user3
Теперь каталоги трех пользователей будут добавляться в бэкап users.
Для автоматизации можно использовать cron. Отредактируйте файл /etc/crontab с помощью текстового редактора:
nano /etc/crontab
Или специальной команды:
crontab -e
Например, для создания еженедельного бэкапа общего каталога пользователей в 23:30 по субботам впишите следующую строку в конец файла:
30 23 * * 6 root /usr/local/fsbackup/create_backup_users.sh
Подробную информацию о службе cron см. здесь.
Дата последнего изменения: 09.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.
Нажимая «Отправить запрос», вы соглашаетесь с условиями обработки персональных данных.
Вы будете получать только актуальную информацию по обновлению безопасности
Подписываясь на уведомления, вы соглашаетесь с условиями обработки персональных данных.
На ваш почтовый адрес отправлено письмо с подтверждением подписки.