29 травня, Понеділок, 2023
A- A A+

Автоматизація резервного копіювання в Linux засобами OwnCloud

Втрата критично важливих даних може виявитися непоправною. І тим не менше мільйони професіоналів легковажно ставляться до резервного копіювання своїх даних. І хоча причини цього в кожному випадку свої, одне з найбільш часто зустрічаються пояснень зводиться до того, що регулярне виконання резервного копіювання може бути неприємною рутинною роботою. Оскільки машини є неперевершеними виконавцями повторюються день у день завдань, автоматизація резервного копіювання є найважливішим способом зменшити обсяг пов'язаної з даним процесом рутинної роботи і побороти притаманну людині тенденцію до відкладання важливих справ.

Але способів резервного копіювання є досить багато, від окремих серверів для резервного копіювання типу BackupPC, Bacula, до простих скриптів копіювання на сторонні сервери по протоколам sftp, чи  ftp.

Ми вирішили використати сервіс хмарного сховища OwnCloud та синхронізувати потрібні нам файли із стороннього серверу на Unix системах

backup01

Отже по порядку:

1. Додаємо репозиторій OwnCloud-a я використовував для Debian 8

Ось лінк на репозиторії для різних операцйних систем - Встановити пакунок isv:ownCloud:desktop / owncloud-client

sudo apt-get update

sudo apt-get install owncloud-client

 2. Встановіть ключ розблокування офіційного репозиторію OwnCloud (не обов'язково) :

cd /tmp

wget http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_8.0/Release.key

apt-key add - < Release.key

3. Оновлюємо залежності пакетів: apt-get update

4. Проводимо пошук потрібних пакетів: apt-cache search owncloud

search pac

 5. Встановлюємо на сервері клієнт синхронізації із файловим сховищем, в нашому випадку він повинен бути консольним

apt-get install owncloud-client-cmd owncloud-client

Потім на сервері OwnCloud створюєм користувача який буде приймати файли з нашого клієнтського сервера з бекапами

На клієнтському сервері запускаєм команду:

owncloudcmd -u dima -p password /home/ext/extreme/ http://cloud.наш_домен.com/owncloud/ 

Де owncloudcmd - виклик клієнта синхронізації

-u dima - користувач

-p password - пароль користувача

/home/ext/extreme/ - Директорія яка буде синхронізуватись

http://cloud.наш_домен.com/owncloud/ - домен вашої хмари

Якщо ми все вірно виконали то ми отримаєм повідомлення із синхронізацією, це може тривати декілька хвилин, в залежності від об'єму даних для синхронізації

Після синхронізації створиться файл в папці яку ви синхронізували

void OCC::SyncJournalDb::close() "/home/ext/extreme/.csync_journal.db" - її бажано не видаляти

Отже ручне налаштування ручного підключення на цьому завершено

Для автоматизації відправки бекапних файлів на сервер Owncloud створюєм завдання cron та поміщаєм в папку /etc/cron.d в нашому випадку це файл @cloudsync з текстом:

00 01 * * * root owncloudcmd -u dima -p password /var/www/ http://cloud.ваш_домен.com/owncloud

Запускати синхронізацію кожен день в 01.00 ночі