Поговорим о важной составляющей сайта — это резервное копирование. Существует огромное количество программ для резервного копирования, платных, бесплатных, но мы воспользуемся, самым простым и на мой взгляд надежным средством, это утилита cron, которая присутствует во всех дистрибутивах linux.

 Утилита cron может использовать как системный файл для указания заданий, который находится в /etc/crontab, так и пользовательский файл.

Разница между ними в том, что для системного файла нужно указывать от какого пользователя выполнять команду

 Расписание

Формат записи времени следующий:

минуты  часы   день_месяца  месяц  день_недели от_кого_выполнять  команда

ЗначениеДиапазон чиселДополнительно
Минуты0-59 
Часы0-23 
День месяца1-31 
Месяц1-12 
День недели0-60 — воскресенье

Добавляем расписание

учше всего создать пользовательский файл от пользователя root (Пароль для root, создавайте надежный).

В директории root создаем файл следующего содержания. Например cronsite.

nano cronsite

# /etc/crontab - root's crontab for FreeBSD
#
# $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
# 1
#
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin 2
HOME=/var/log
#
#
#minute hour mday month wday  who    command 
#
#
00           23    *          *     0                sh /root/site_backup/backup.sh

Сохраняем.

Создаем папку для бэкапов.

mkdir site_backup

mkdir  ~./site_backup/file

mkdir  ~./site_backup/base

Подключаем созданный файл командой:

crontab /root/cronsite

Посмотреть готовое расписание можно командой

crontab -l

Редактировать расписание можно командой (редактор vi)

crontab -e 

Удалить текущее расписание командой

crontab -r

Скрипты для бэкапов

Создадим один скрипт для файлов и для базы данных.

touch backup.sh

Редактируем

nano backup.sh

#!/bin/bash

###################### FILE BACKUP ##################################

cd /root/site_backup/file
rm ./site-3.tar.gz
mv site-2.tar.gz site-3.tar.gz
mv site-1.tar.gz site-2.tar.gz
mv site-0.tar.gz site-1.tar.gz
tar -czf site-0.tar.gz /usr/local/www/apache24/data/

####################################################################

###################### BASE BACKUP #################################

cd /root/site_backup/base
rm ./site-3.sql
mv site-2.sql site-3.sql
mv site-1.sql site-2.sql
mv site-0.sql site-1.sql
mysqldump --opt -u admin -pyoupassword base_name  > /root/site_backup/base/site-0.sql

####################################################################

Делаем скрипт исполняемым

chmod +x backup.sh

 В бэкапе баз строчка mysqldump … записана верно. вместо youpassword вписываете Ваш пароль к базе данных. site — имя Вашей базы данных. Пользователь базы данных должен обладать правами для работы с этой базой данных.

root пользователя вводить не рекомендуется, в целях безопасности.

 

Восстановление работы сайта

Чтобы восстановить файлы, можно просто распаковать архив и залить в директорию, где находятся файлы сайта. Чтобы восстановить базу введем команду:

mysql -u USER -pPASSWORD DATABASE < /root/site_backup/base/site-0.sql

Перезапускаете apache и mysql

И все будет хорошо!)

Автор

alex@tehalex.ru

Похожие записи

Получаем бесплатный сертификат Let’s Encrypt с автоматическим продлением c помощью certbot

Для тех у кого есть свой сайт, блог визитка по новым требованиям необходимо переводить свой сайт на ssl. Но не у всех...

Читать полностью
ЧПУ человекопонятный УРЛ

Подключение ЧПУ в apache24 в ОС FreeBSD

  После установки web — сервера и установки WordPress, необходимо настроить «постоянные ссылки» или сокращенно ЧПУ. Немного теории, Что такое  ЧПУ –...

Читать полностью

Два сайта на одном IP

Иногда бывает необходимо добавить несколько сайтов на один Web сервер. Их количество ограничивается только мощностью вашего компьютера. и денег, чтобы оплачивать доменное...

Читать полностью
phpmyadmin

Установка phpMyAdmin

phpMyAdmin — это программа написанная на PHP и предназначенная для управления сервером MySQL через всемирную сеть. phpMyAdmin поддерживает широкий набор операций над MySQL. Наиболее часто используемые...

Читать полностью

Установка и настройка php в FreeBSD

PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессоргипертекста»; первоначально Personal Home Page Tools[7] — «Инструменты для создания персональных веб-страниц»; произносится пи-эйч-пи) — скриптовый язык[8] общего назначения, интенсивно применяемый для разработки...

Читать полностью

Установка и настройка MySQL8.0

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP, VertrigoServ. Обычно MySQL используется в качестве сервера,...

Читать полностью