Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-daily-backup-scripts-for-mysql-databases-and-wordpress-phpbb-dokuwiki-sites

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-daily-backup-scripts-for-mysql-databases-and-wordpress-phpbb-dokuwiki-sites [06.04.2016 14:54] Алексей Максимовunix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-daily-backup-scripts-for-mysql-databases-and-wordpress-phpbb-dokuwiki-sites [06.04.2016 16:07] (текущий) – [Очистка старых резервных копий] Алексей Максимов
Строка 1: Строка 1:
 ===== Настройка веб-сервера на базе стека LEMP в Ubuntu Server 14.04 LTS. Часть 12. Настройка скриптов резервного копирования сайтов и баз данных MySQL ===== ===== Настройка веб-сервера на базе стека LEMP в Ubuntu Server 14.04 LTS. Часть 12. Настройка скриптов резервного копирования сайтов и баз данных MySQL =====
  
-В это части мы рассмотрим пример настройки простых скриптов для выполнения регулярного резервного копирования корневых папок сайтов и баз данных MySQL на [[:unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04|веб-сервер на стеке LEMP]]. За основу взят [[https://gist.github.com/chrishough/4522386|набор bash-скриптов с GitHub]]. Исходим из условия, что предварительно на нашем веб-сервере создан [[:unix-linux:linux-cli-tools:linux-how-to-add-and-format-partition-on-new-disk-with-parted-and-add-it-to-fstab|дополнительный выделенный диск]] под резервное копирование с точкой монтирования **/mnt/backup**+В это части мы рассмотрим пример настройки простых скриптов для выполнения регулярного резервного копирования корневых папок сайтов и баз данных MySQL на [[:unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04|веб-сервер на стеке LEMP]]. За основу взят [[https://gist.github.com/chrishough/4522386|набор bash-скриптов с GitHub]] со своими переработками. Исходим из условия, что предварительно на нашем веб-сервере создан [[:unix-linux:linux-cli-tools:linux-how-to-add-and-format-partition-on-new-disk-with-parted-and-add-it-to-fstab|дополнительный выделенный диск]] под резервное копирование с точкой монтирования **/mnt/backup**
  
 \\ \\
Строка 162: Строка 162:
 </file> </file>
  
 +\\
 +==== Очистка старых резервных копий ====
  
 +Создаём скрипт очистки:
  
 +<code>sudo nano /usr/local/sbin/backup-cleanup.sh</code>
 +
 +Наполняем скрипт содержимым:
 +
 +<file bash backup-cleanup.sh>
 +#!/bin/bash 
 +#
 +BackUpDIR="/mnt/backup/daily/";
 +SubDIRs="databases websites";
 +
 +for SubDIR in $SubDIRs; 
 +do
 +
 + if [ $(find $BackUpDIR$SubDIR/ -name '*.xz' -mtime -6 | wc -l) -eq 0 ]; then
 +   # no fresh backups for last 6 days
 +   continue
 + else
 +   # delete backups greater than 7 days old 
 +   find $BackUpDIR$SubDIR/ -name '*.xz' -mtime +7 -delete
 + fi
 +
 +done
 +</file>
 +
 +Скрипт выполняет поиск и удаление всех файлов резервных копий старше 7 дней. При этом если создание новых бэкапов перестало работать и нет файлов свежее 6 последних дней, то удаление бэкапов отменяется. 
 +
 +Делаем скрипт исполняемым и ограничиваем к нему доступ:
 +
 +<code>sudo chmod 700 /usr/local/sbin/backup-cleanup.sh</code>
 +
 +Пробуем выполнить скрипт с правами суперпользователя:
 +
 +<code>sudo su -
 +/usr/local/sbin/backup-cleanup.sh</code>
 +
 +Скрипт должен отработать без явных ошибок.
 +
 +
 +Добавляем задание резервного копирования в **cron**:
 +
 +<code>sudo nano /etc/cron.d/backup-cleanup</code>
 +
 +
 +Содержимое файла задания на ежедневное выполнение в 02:00:
 +
 +<file bash backup-cleanup.sh>
 +# Daily remove backups greater than 7 days old 
 +00 02 * * * root /usr/local/sbin/backup-cleanup.sh
 +</file>
  
 ---- ----
Строка 169: Строка 221:
 {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 06.04.2016 14:07 {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 06.04.2016 14:07
  
-{{tag>Linux Ubuntu "Ubuntu Server" "Ubuntu 14.04" "14.04 LTS" "web server" Backup MySQL mysqldump Cron Bash Script}}+{{tag>Linux Ubuntu "Ubuntu Server" "Ubuntu 14.04" "14.04 LTS" "web server" Backup MySQL mysqldump Cron Bash Script Cleanup}}
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
unix-linux/ubuntu/ubuntu-14-04-lts-trusty-tahr/how-to-install-lemp-web-server-on-ubuntu-14-04/setup-daily-backup-scripts-for-mysql-databases-and-wordpress-phpbb-dokuwiki-sites.1459943689.txt.gz · Последнее изменение: 06.04.2016 14:54 — Алексей Максимов

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki