
Грамотный системный администратор первостепенно заботится о сохранности вверенных ему в администрирование данных, а потому резервное копирование — основа администрирования. Если вы не заботитесь о бэкапах, будь вы хоть эксперт самого высокого уровня, профессионалом вас не назвать.
Когда на моем блоге количество статей дошло до нескольких десятков, а использовать блог я стал уже полноценно, а не в целях обкатки и тестирования функций, меня все чаще стали посещать мысли «а вдруг все однажды упадет». Использование одиночного диска SATA без всяких рейдов уверенности мне не добавляло, пусть и блог вскоре ждал переезд с тестовой среды на сравнительно защищенную, с использованием raid 1. Не став искушать судьбу я занялся вопросом резервного копирования WordPress. Недолго думая выбор пал на «XCloner» — средство не только резервного копирования, а ещё и клонирования сайтов. Если честно, то пока не могу адекватно оценить «XCloner», кто-то может сказать, что это не лучший выбор, но у меня стояла задача выполнить резервное копирование и протестировать от начала и до конца сценарий восстановления. По отзывам в интернете это средство свою задачу выполняет на отлично, поэтому я и выбрал его.
Исходные данные
Имеем сервер с условным именем «debian01» с ОС «Debian», настроен полностью по моим же статьям — «Debian. Установка системы на виртуальную машину» и «Debian. Начальная настройка системы«. Ниже я все-таки напишу основные моменты настройки, поскольку буду на них ссылаться в последующем.
На сервере «debian01» в каталог /var/www/ установлен «WordPress». Из консоли администрирования «WordPress» добавлен плагин «XCloner».
Подготовка второго сервера
Для полноценного восстановления нам понадобится второй сервер, аналогичный первому, условно назовем его «debian02». Нужно подготовить и настроить этот сервер точно также как и первый:
Сеть:
root@debian7:~# nano /etc/network/interfaces
В файле у интерфейса eth0 задаем следующие настройки:
auto eth0
iface eth0 inet static
address 192.168.1.120
netmask 255.255.255.0
gateway 192.168.1.1
Пропишем DNS-серверы:
root@debian7:~# nano /etc/resolv.conf
nameserver 192.168.1.1
nameserver 8.8.8.8
Уберем проверку пакетов с cd-rom (закомментировать строчки, начинающиеся на cd-rom):
root@debian7:~# nano /etc/apt/sources.list
Обновление системы:
root@debian7:~# apt-get update
root@debian7:~# apt-get upgrade
Ставим необходимые пакеты для wordpress:
root@debian7:~# sudo apt-get install apache2 apache2-utils php5 php5-mysql mysql-client mysql-server
Почему-то нигде в интернете ни в одном руководстве «XCloner» я не нашел упоминания о том, что перед восстановлением надо создать базу данных mysql на новом сервере. Желательно это сделать в точности также как это было на старом — такое же название, пользователь и права.
Создаем базу:
root@debian7:~# mysql -u root -p
mysql> CREATE DATABASE IF NOT EXISTS имя_БД;
mysql> CREATE USER имя_пользователя@localhost IDENTIFIED BY «пароль_пользователя»;
mysql> GRANT ALL PRIVILEGES ON имя_БД.* TO «имя_пользователя»;
mysql> quit
Помимо этого надо разобраться с правами доступа к каталогам. В нашем случае предоставим права владельца каталога /var/www/ и его содержимого пользователю www-data и сделаем это рекурсивно:
root@debian7:~# chown -R www-data:root /var/www/
Достаем из бэкапа файлы (сделать вы это можете где угодно, хоть под Windows, хоть из под Linux):
TAR.php
XCloner.php
В архиве будут два файла «XCloner.php«, нам нужен тот, который весит больше. Помещаем эти файлы в каталог установки сайта — у меня это /var/www/, поскольку других сайтов пока нет и в будущем они не планируются. Также в этом каталоге должен лежать сам архив. Немного размышлений о том, как это лучше всего сделать: я загружал файлы на внешний бесплатный файлообменник и скачивал их с помощью «wget«; вы это можете сделать любым другим способом — скачать с локального ftp-сервера, например; сразу хочу отметить, что облачные хранилища типа «Яндекс-Диска» или «Mail.ru Cloud» не прокатят — они не дают прямой ссылки на загрузку, скачивать можно только через браузер, проверено.
Восстановление сайта через Xcloner
Сразу после копирования всех необходимых файлов проходим по следующему пути: «http://192.168.1.120/XCloner.php» и увидим окно:
Необходимо вбить настройки подключения к СУБД. Все они нам известны из процесса создания базы данных на новом сервере (см. выше) — это имя пользователя, его пароль и имя базы данных. Не забываем выставить кодировку utf8, иначе получите знаки вопроса вместо ваших дорогих статей. Как все готово, нажимаем «Start install». Если все нормально, то вы увидите прогресс восстановления и по его завершении получите следующее окно:
Нам ничего не остается, кроме как нажать «Please click here to continue with database import…» и после некоторого времени, необходимого для восстановления базы, мы увидим:
Нажимаем на «All should be done! Click here to continue…».
Кажется все готово, осталось лишь перейти на ваш сайт, вбив в адресной строке ip-адрес сервера, но, к сожалению, вы получите стандартную страничку приветствия web-сервера «Apache». Чтобы попасть на ваш сайт, нужно удалить дефолтную страницу следующей командой:
root@debian7:~# rm /var/www/index.html
На этом все, сайт должен работать:
После того как все восстановлено и проверено крайне желательно удалить скопированные ранее файлы «TAR.php» и «XCloner.php», а также архив бэкапа с помощью команды rm, как это было сделано с файлом «index.html».
comments powered by HyperComments