Статті / Резервне копіювання даних

Резервне копіювання даних

Bash BackUp

При теперішніх об'ємах інформації, резервування даних займає важливий етап у підготовці та роботі будь-якого проекту. Для чого і чому необхідно робити резервні копії напевно й пояснювати не потрібно. Тут кожен може привести аргументи "ЗА".

Так от. Для резервування своїх сайтів, які знаходяться на сервері з операційною системою Linux, я використовую утиліту яка знаходитися в репозиторію - backup-manager. Дана утиліта є дуже гнучкою. Та й налаштовується дуже просто. Отож, щоб встановити і налаштувати її виконуємо в терміналі наступне:

apt-get install backup-manager
nano /etc/backup-manager.conf

Далі змінюємо кілька основних параметрів.

export BM_ARCHIVE_TTL="5" # Кількість днів, що буде зберігатись копія
export BM_REPOSITORY_ROOT="/home/backups" # Шлях до директорії де будуть зберігатись резервні копії
export BM_TARBALL_FILETYPE="tar.gz" # Тип архіву
export BM_TARBALL_DIRECTORIES="/etc /home/vhosts /var/lib/mysql /var/log" # Директорії, які необхідно копіювати. Писати через пробіл!
export BM_MYSQL_DATABASES="base1 base2 base3" # Назви баз даних, дампи яких будуть копіюватись. Замість наз баз можна написати __ALL__, тоді всі бази будуть писатись в один файл-дамп
export BM_MYSQL_ADMINLOGIN="root" # Ім'я користувача, який має доступ до баз даних
export BM_MYSQL_ADMINPASS="your_secret_passwords" # Пароль =)

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

Якщо дана утиліта здається Вам занадто громіздкою і складною, а резервні копії потрібно робити після кожного білду, то можна скористатись стандартними засобами командної оболонки bash. Для цього Вам не потрібно займатись програмуванням. Просто скачайте файл backup.bash і змініть наступні параметри на свої.

PROJNAME=Brun_Project #Ім'я проекту
CHARSET=utf8 #Кодування бази даних
DBNAME=brunif #Ім'я бази даних для резервного копіювання
DBFILENAME=brun-dump #Ім'я дампа бази даних
ARFILENAME=BackUp_Brun_Project #Ім'я архіву з файлами (автоматом дописуватимесь дата і година)
HOST=localhost #Хост MySQL
USER=root #Ім'я користувача бази даних
PASSWD=your_secret_password #Пароль бази даних
DATADIR=/home/brun/backup #Шлях, де будуть зберігатись резервні копії
SRCFILES=/home/brun/projaect1 #Шлях до каталогу, для якого необхідно робити резервну копію
PREFIX=`date +%F` #Префікс по даті для стуктурування резервниих копій

Більше нічого змінювати не варто, але дивіться і вирішуйте самі.

Завантажити: backup.bash