У цій статті ми розглянемо, як налаштувати систему резервного копіювання на Ubuntu за допомогою двох інструментів – Bacula та Duplicity. Обидва інструменти надають потужні можливості для резервного копіювання та відновлення даних на Ubuntu.
Що таке Bacula?
Bacula – це система резервного копіювання з відкритим кодом, яка надає потужні функції для резервного копіювання та відновлення даних на різних операційних системах, включаючи Ubuntu. Bacula складається з декількох компонентів, серед яких Bacula Director, Bacula Storage Daemon та Bacula File Daemon. Bacula Director є головним компонентом Bacula і керує всіма операціями резервного копіювання та відновлення даних. Bacula Storage Daemon відповідає за зберігання резервних копій, а Bacula File Daemon забезпечує резервне копіювання файлів на віддалених машинах.
Що таке Duplicity?
Duplicity – це ще одна система резервного копіювання з відкритим кодом, яка працює на різних операційних системах, включаючи Ubuntu. Duplicity особливо корисна для резервного копіювання на віддалені сервери, такі як Amazon S3 чи Dropbox. Duplicity надає функції резервного копіювання та відновлення даних, а також шифрування та автоматичну перевірку цілісності даних.
Крім того, вам може бути цікаво дізнатися, як створювати та відновлювати резервні копії великих баз даних MySQL за допомогою утиліт Sypex Dumper та Adminer. Детальніше у статті: Резервне копіювання та робота з великими базами даних.
Як налаштувати Bacula на Ubuntu 22.04?
Для початку встановіть Bacula на Ubuntu за допомогою наступної команди в терміналі:
sudo apt-get install bacula
Після встановлення вам потрібно налаштувати Bacula Director, який керує всіма операціями резервного копіювання та відновлення даних. Відредагуйте файл /etc/bacula/bacula-dir.conf та налаштуйте його відповідно до ваших потреб. Нижче наведено приклад конфігураційного файлу:
Director { Name = bacula-dir DIRport = 9101 QueryFile = "/etc/bacula/scripts/query.sql" WorkingDirectory = "/var/lib/bacula" PidDirectory = "/var/run/bacula" Maximum Concurrent Jobs = 1 Password = "password" Messages = Daemon } Catalog { Name = MyCatalog dbname = "bacula" DB Address = localhost DB Port = 0 DB User = bacula DB Password = "password" } FileSet { Name = "Full Set" Include { Options { signature = SHA1 } File = /home } Exclude { File = /home/user/tmp } } Job { Name = "BackupClient1" JobDefs = "DefaultJob" Client = BackupClient1-fd FileSet = "Full Set" Schedule = "WeeklyCycle" Storage = FileStorage Priority = 10 Write Bootstrap = "/var/lib/bacula/%c.bsr" Run Before Job = "/etc/bacula/scripts/myscript.sh" Run After Job = "/etc/bacula/scripts/myscript.sh" } Job { Name = "RestoreFiles" Type = Restore Client=BackupClient1-fd FileSet="Full Set" Storage = FileStorage Pool = Default Messages = Standard Where = /tmp/bacula-restores } Storage { Name = FileStorage Address = 192.168.1.1 SDPort = 9103 Password = "password" Device = FileStorageDevice } Device { Name = FileStorageDevice Media Type = File Archive Device = /mnt/backup LabelMedia = yes Random Access = yes AutomaticMount = yes RemovableMedia = no } Client { Name = BackupClient1-fd Address = 192.168.1.2 FDPort = 9102 Password = "password" File Retention = 30 days Job Retention = 6 months AutoPrune = yes } Schedule { Name = "WeeklyCycle" Run = Full sun at 23:05 Run = Differential mon-sat at 23:05 Run = Incremental mon-sat at 23:05 }
Тепер, коли конфігурація Bacula Director налаштована, вам потрібно налаштувати Bacula Storage Daemon, який керує зберіганням резервних копій. Відредагуйте файл /etc/bacula/bacula-sd.conf та налаштуйте його відповідно до ваших потреб. Нижче наведено приклад конфігураційного файлу Bacula Storage Daemon:
Storage { Name = FileStorage Address = 192.168.1.1 SDPort = 9103 Password = "password" Device = FileStorageDevice } Device { Name = FileStorageDevice Media Type = File Archive Device = /mnt/backup LabelMedia = yes Random Access = yes AutomaticMount = yes RemovableMedia = no } Director { Name = bacula-dir Password = "password" }
Переконайтеся, що ви правильно налаштували свої дискові пристрої та права доступу до папки, яка буде використовуватися для зберігання резервних копій.
Як налаштувати Duplicity на Ubuntu 22.04?
Для початку встановіть Duplicity на Ubuntu за допомогою наступної команди в терміналі:
sudo apt-get install duplicity
Потім налаштуйте конфігураційний файл Duplicity, який буде використовуватися для резервного копіювання та відновлення даних. Відредагуйте файл /etc/duplicity/duplicity.conf та налаштуйте його відповідно до ваших потреб. Приклад конфігураційного файлу Duplicity:
[global] encrypt-key = ABCDEFGH sign-key = ABCDEFGH archive-dir = /mnt/backups/duplicity verbosity = 5 full-if-older-than = 7D volsize = 250 tempdir = /tmp [source] include = /home/user/Documents exclude = /home/user/Documents/tmp exclude = /home/user/Documents/cache [destination] protocol = sftp host = backupserver.example.com user = backupuser port = 22 path = /mnt/backups/duplicity
Тут ми вказали наступні параметри:
- encrypt-key: публічний ключ GPG, що використовується для шифрування даних.
- sign-key: публічний ключ GPG, що використовується для підпису даних.
- archive-dir: шлях до локальної папки, де зберігатимуться резервні копії.
- verbosity: рівень виведення повідомлень.
- full-if-older-than: час, після якого потрібно виконати повне резервне копіювання.
- volsize: розмір тому резервної копії.
- tempdir: тимчасова папка для роботи Duplicity.
Далі ми вказуємо джерело даних (source) та місце призначення (destination). У нашому прикладі ми обрали протокол SFTP для передачі даних на віддалений сервер.
Тепер, коли конфігураційний файл налаштовано, ви можете виконати резервне копіювання за допомогою наступної команди:
duplicity sftp://backupuser@backupserver.example.com/mnt/backups/duplicity /home/user/Documents
Ця команда відновить всі файли з резервної копії на локальний комп’ютер у папку /home/user/Documents.
Висновок
Bacula та Duplicity – це потужні інструменти для резервного копіювання даних на Ubuntu. Bacula має більш широкий функціонал і призначена для великих мереж з численними серверами, тоді як Duplicity – це простий та зручний інструмент для резервного копіювання даних на віддалений сервер.
У цій статті ми розглянули, як налаштувати Bacula та Duplicity на Ubuntu, починаючи від встановлення їх пакетів і закінчуючи налаштуванням конфігураційних файлів. Сподіваюся, ця стаття допоможе вам обрати відповідний інструмент для резервного копіювання даних та налаштувати його на вашому сервері Ubuntu.
Незалежно від того, який інструмент ви оберете, пам’ятайте, що резервне копіювання даних – це критично важливий процес, який може запобігти втраті даних у разі збоїв або кібератак. Не забувайте регулярно перевіряти свої резервні копії та оновлювати їх за потреби.
Сподіваюся, ця стаття була корисною та допомогла вам налаштувати систему резервного копіювання на вашому сервері Ubuntu за допомогою Bacula або Duplicity. Якщо у вас є будь-які питання або коментарі, не соромтеся залишати їх унизу.