Автоматизація резервного копіювання в Linux засобами OwnCloud
Втрата критично важливих даних може виявитися непоправною. І тим не менше мільйони професіоналів легковажно ставляться до резервного копіювання своїх даних. І хоча причини цього в кожному випадку свої, одне з найбільш часто зустрічаються пояснень зводиться до того, що регулярне виконання резервного копіювання може бути неприємною рутинною роботою. Оскільки машини є неперевершеними виконавцями повторюються день у день завдань, автоматизація резервного копіювання є найважливішим способом зменшити обсяг пов'язаної з даним процесом рутинної роботи і побороти притаманну людині тенденцію до відкладання важливих справ.
Але способів резервного копіювання є досить багато, від окремих серверів для резервного копіювання типу BackupPC, Bacula, до простих скриптів копіювання на сторонні сервери по протоколам sftp, чи ftp.
Ми вирішили використати сервіс хмарного сховища OwnCloud та синхронізувати потрібні нам файли із стороннього серверу на Unix системах
Отже по порядку:
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
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 ночі