Резервное копирование сайта. Как часто делать Backup

Backup сайтов на хостинге

Что такое backup и зачем нужен

Резервная копия сайта (backup) – это процедура копирования и сохранения файлов сайта, баз данных, настроек аккаунтов, SSL-сертификатов и прочих данных, относящихся к сайту, в месте отличном от места размещения самого сайта. Например, на локальный компьютер или на специальный сервер для резервных копий.

Бэкап позволяет восстановить работоспособность сайта (или его состояние на какой-то момент) в случаях:

  • Заражения вирусами;
  • Взлома сайта злоумышленниками;
  • Случайного удаления фалов или страниц сайта (или их части);
  • Потери данных из-за ошибок оборудования;
  • Потери или нежелательные изменения данных из-за неверных действий администратора или владельца сайта;
  • Глобальной аварии у хостера;
  • Различных конфликтных ситуаций с вашим хостинг-провайдеров, приводящих к блокировке или удалению аккаунта.

При наличии грамотного резервного копирования в случае любых проблем работу сайта можно восстановить за несколько минут (или пару-тройку часов в особо тяжелых случаях).

Примечание: чтобы снизить риски различных блокировок – держите домен и хостинг у разных компаний.

Как часто делать резервные копии

Вопрос частоты резервного копирования очень индивидуален. Все зависит от вашего бизнеса и критичности потери данных.

Если у вас просто сайт-визитка компании, данные на котором почти не меняются, то вполне можно обойтись одним полным бэкапом в месяц.

Если ваш проект представляет из себя сложную динамично изменяющуюся информационную систему, да еще и с пользовательскими данными, занимающими сотни гигабайт дискового пространства, то придется напрячься и разработать сложную системы инкрементных бэкапов (или чего-то схожего). Тут имеет смысл делать полный архив раз, например, в неделю. Какие-то менее критичные данные бэкапить раз в день. А что-то особо важное и динамичное резервировать раз в час, а то и каждую минуту.

Но для среднестатистического сайта можно рекомендовать делать резервное копирование минимуму раз в месяц на локальную машину или на другой сервер. И делать ежедневный бэкап за последние 7 дней средствами CMS сайта или хостинга.

Как и чем делать бэкапы сайта

Ответ на этот вопрос на самом деле следует из предыдущего раздела. Всё индивидуально. Мы же можем дать только общие рекомендации.

Но давайте предположим, что у нас среднего размера проект, который имеет ежедневное обновление контента, но при этом не содержит критически важных данных.

Резервное копирование средствами хостинга

Большинство популярных провайдеров виртуального хостинга предоставляют на всех тарифах автоматическую систему резервного копирования.

Бэкапы обычно делаются за относительно небольшой промежуток времени, чаще всего за последние 7 дней. Бэкапятся полностью все файлы и базы данных на аккаунте.

  • Beget. Из панели управления – раздел «BackUp». Одна копия по требованию бесплатно, последующие – 2 руб.

  • Timeweb. Панели управления главное меню слева – раздел «Резервные копии». Бэкап по требованию платно – 5 руб. за копию.

  • Sprinthost. Левое меню панели управления – раздел «Дополнительно» – пункт «Резервные копии». Все бэкапы у Спринтхост бесплатные.

  • Хостинги на ISPmanager. В панели управления левое меню – раздел «Резервное копирование». Периодичность и цена дополнительных бэкапов будут зависеть от конкретного хостинга.

  • Хостеры под управлением CPanel. На главном экране панели управления в секции «Files» («Файлы») – значок «Site Backup». Обычно ручные копии бесплатные.

Резервное копирование вручную

Сделать ручной бэкап также обычно несложно. Самый простой способ – воспользоваться файловым менеджером хостинга для создания архива файлов и через phpMyAdmin сделать дамп базы данных.

Некоторые хостеры также дают возможность сделать бэкап по запросу через панель управления или скачать ранее автоматически созданный архив.

Главное, не забудьте потом скачать все созданные архивы к себе на компьютер, а с хостинга их удалить после этого.

Автоматическое резервное копирование своим скриптом

Отличный способ делать бэкапы так, как нужно именно вам, и при этом не делать все вручную – это создать свой собственный скрипт резервного копирования и запускать его по расписанию. А резервные копии сохранять на файловый сервер у другого провайдера или в какой-нибудь облачный сервис.

Мы часто используем простой bash-скрипт – он выполняет полное копирование раз в заданные промежуток времени, а в промежутках делает бэкапы только измененных файлов. А все архивы сохраняет на удаленный FTP-сервер.

Делимся скриптом, можете использовать под свои нужды:

#!/bin/sh


### System Setup ###
# Короткое название папки (используется для формирования имен)
DIRSHORT="mysite"
# Папка для бэкапа
DIRS="mysite_dir/www"
# Временная папка (в нее будут архивироваться файлы)
BACKUP=./bak/backup.$$
# формат даты для имен (можно не менять)
NOW=$(date +"%Y-%m-%d")
# Файл с информацией о инкрементальных копиях
INCFILE="mysite_dir/bak/$DIRSHORT-tar-inc-backup.dat"
# текущий день недели (не менять)
DAY=$(date +"%a")
# день недели полного бэкапа
FULLBACKUP="Sun"

### FTP server Setup ###
# папка на FTP
FTPD="myftp"
# имя пользователя FTP
FTPU="myftpuser"
# Паароль FTP
FTPP="password"
# Сервер FTP
FTPS="mysite_server"
#NCFTP="$(which ncftpput)"

### Other stuff ###
EMAILID="mymail"

### Start Backup for file system ###
[ ! -d $BACKUP ] && mkdir -p $BACKUP || :

### See if we want to make a full backup ###
i=$(date +"%Hh%Mm%Ss")
if [ "$DAY" == "$FULLBACKUP" ]; then
# FTPD="/mysite/full"
datedir="$NOW-full"
FILE="$DIRSHORT-full-$NOW-$i.tar"
rm $INCFILE
tar -g $INCFILE -cvf $BACKUP/$FILE $DIRS
else
datedir=$NOW
FILE="$DIRSHORT-i-$NOW-$i.tar"
tar -g $INCFILE -cvf $BACKUP/$FILE $DIRS
fi

### Dump backup using FTP ###
#Start FTP backup using ncftp
echo "Ftp upload start"

# temp files
ftpcommand="mysite/tmp/$DIRSHORT-com.ftp"
ftplog="mysite/tmp/$DIRSHORT-log.ftp"

# ftp script
echo "user $FTPU $FTPP
mkdir $FTPD
mkdir $FTPD/$datedir
cd $FTPD/$datedir
lcd $BACKUP
mput *
quit" > $ftpcommand

# execute ftp script
/usr/bin/ftp -n -i -p $FTPS > $ftplog < $ftpcommand

Резервное копирование средствами CMS

Некоторые системы управления сайтами имеют модули или встроенные функции для создания бэкапа сайта.

Рассмотрим возможности резервного копирования у некоторых популярных CMS.

Резервное копирование в Wordpress

Для Wordpress существует несколько как платных, так и бесплатных модулей для бэкапов.

  1. BackUp WordPress (http://wordpress.org/plugins/backupwordpress/)
    Позволяет делать резервные копии файлов и базы данных. В платной версии можно сохранять архивы в Google Disk или Dropbox.
  2. WP Remote – плагин и сервис (https://wpremote.com/)

    В бесплатной верcии только ручное копирование. В платной работа по расписанию и интеграция с Driopbox и Amazon S3.
  3. UpdraftPlus (https://ru.wordpress.org/plugins/updraftplus/)

    Очень прост в использовании. Копии может хранить в каталоге сайта или в обачном хранилище (Google Диск, Dropbox, Amazon S3 и др.). Бесплатная версия полностью функциональна. В платном варианте только добавляется поддержка других облачных хранилищ.

Для Wordpress существует еще несколько плагинов для резервного копирования, но даже указанных выше уже более чем достаточно для большинства сайтов.

Резервное копирование в Drupal

CMS Drupal имеет очень мощный бесплатный модуль Backup and Migrate. Модуль позволяет очень гибко настраивать какие части вашего сайта бэкапить, делать резервные копии базы данных.

Все это возможно настроить по расписанию, делать копирование одновременно в различные хранилища. Возможно удаленное копирование по FTP, сохранение копий локально, хранение копий с специальном защищенном каталоге прямо на сайте, бэкапы в хранилища Amazon S3.

С помощью дополнительных расширений можно архивы по защищенному протоколу SFTP и сохранять свои резервные копии в облако DropBox.

Кроме того «из коробки» интегрирован с сервисом NodeSquirrel, предоставляющим 5 Гб. бесплатно для для одного сайта на аккаунте.

Резервное копирование в CMS Bitrix

Самая популярная система для сайтов в России Битрикс тоже имеет встроенные средства для создания бэкапов.

Битрикс позволяет настроить, какие именно части сайта нужно бэкапить. Делать копии базы данных. Исключать ненужные данные из бэкапа.

Хранить архивы Битрикс предлагает или в каталоге сайта, или в собственном облаке компании 1С-Битрикс.

Где хранить резервные копии

Вариантов мест для хранения бэкапов очень много. Приведем список самых часто используемых хранилищ:

# Вариант хранения Наш комментарий
1 В каталоге с сайтом Обычно используется для быстрых копий перед внесением изменений в контент сайта, чтобы можно было быстро откатиться назад
2 В каталоге аккаунта на хостинге «рядом» с сайтом Обычно это «промежуточный» способ, часто используется при переносе сайта с одного сервера на другой
3 Файловые хостинги Специальные хостинги для хранения только статичных сайтов. Обычно предоставляют много дискового пространства за небольшие деньги. Передача файлов производится по FTP, SFTP или методом S3
4 Специализированные сервисы для хранения резервных копий Например, облако 1С-Битрикс или NodeSquirrel и тп.
5 Хранение на другом сервере или хостинге Довольно сомнительный метод на наш взгляд, но он имеет место быть. Суть в том, что если у вас есть 2 разных сайта на разных хостингах (или хотябы на разных серверах одного), то копии 1-го сайта вы храните на 2-м хостинге, а копии 2-го сайта на 1-м хостинге – такое себе «перекрестное опыление» бэкапами
6 Локальный диск Вы просто скачиваете backup-архив к себе на компьютер и храните либо прямо там или копируете еще на какой-то носитель (сетевой или съемный). Этот способ самый неудобный, но иногда всеже стоит сохранять архив локально, как показывает практика, такая перестраховка иногда бывает очень кстати

Резервное копирование виртуальных серверов

Если вы арендуете VPS или VDS, то все заботы по резервному копированию ложатся полностью на ваши плечи. При этом все вышеперечисленные способы, кроме средств панели управления хостингом, в полной мере остаются актуальными и для виртуальных серверов.

А вот резервное копирование средствами хостера для VPS/VDS предоставляют далеко не все провайдеры. И обычно это дополнительная платная услуга.

Например дополнительно систему резервного копирования сервера можно заказать у 1cloud.ru и у cloudlite.ru, а AdminVPS в зависимости от тарифа предоставляет от 20 до 160 Гб дискового пространства под backup бесплатно.

Подводя итоги

Вывод очень простой: чем больше у вас резервных копий, тем вам спокойнее за ваш сайт.

Частота резервного копирования должна соотноситься с масштабами и задачами вашего проекта.

А хранить резервные копии лучше всего минимум в двух независимых друг от друга хранилищах.

Оценить эту страницу
Голосов пока нет
Поделиться
Опрос: На каком типе хостинга вы размещаете сайты?
Рейтинги хостингов по параметрам

Страны

CMS

DLE

Админ-панели

Типы сайтов

Города

Способы оплаты

Операционные системы

iso

Тип хостинга

Виртуализация

KVM
XEN

Поддерживаемые технологии

PHP