Резервное копирование сайта на Joomla 2.5. Резервная копия joomla сайта
Резервное копирование сайта в Akeeba Backup для Джумла
В двух словах, Akeeba Backup, бесплатное расширение для Джумла, позволяет сделать резервную копию сайта, будь то с локального сервера (с домашнего ПК) или реального (в интернете) с минимальными усилиями. Вы всегда сможете восстановить сайт из резервной копии, созданной в Akeeba Backup, на локальном или реальном сервере за минимальное время. При этом, каких то особых знаний в восстановлении базы данных сервера после восстановления, от Вас не потребуется.
Но все же, Вам вначале, стоит попробовать восстановить сайт на локальном сервере (потренироваться), а затем уже на реальном.
Примечание. На примере будет рассмотрен процесс создания резервной копии на локальном сервере на домашнем ПК. Если Вы создаете резервную копию на реальном сервере в интернете - суть не меняется.
Тут и далее извиняюсь за корявый перевод Яндекс Хром.
Скачиваем последнюю стабильную версию Akeeba Backup по ссылке
https://www.akeebabackup.com/download/akeeba-backup.html
И русификатор, выбрав русский язык из списка по ссылке
http://cdn.akeebabackup.com/language/akeebabackup/index.html
Как устанавливать расширения для Джумла, я думаю объяснять не надо.
Приступим к резервному копированию сайта. Заходим в плагин, нажав Компоненты, Akeeba Backup.
Важно. Далее, через настройки расширения Akeeba Backup, в строке «Папка для сохранения резервных копий», крайне желательно, указать необходимый путь сохранения резервной копии сайта т.к. по умолчанию плагин сохраняет копию сайта в папку на Вашем локальном или реальном сервере, например, как в моем случае на локальном сервере, по пути:
D:\OpenServer\domains\tryhimself /administrator/components/com_akeeba/backup
Одним словом, сами понимаете, резервная копия сохранится на самом сайте. А нам это надо?
Вначале, создаем папку в нужном нам месте для сохранения резервной копии. Иначе, без предварительной созданной папки, сохранится сайт по умолчанию, на вашем сервере, т.е. на сайте. Далее, меняем путь сохранения резервной копии, будь то на локальном или реальном сервере, на путь сохранения, где Вы создали для этого папку, например, ели это локальный сервер:
D:\Backup
Для этого заходим в настройки Akeeba Backup
И укажем путь для сохранения сайта, нажав на папку сохранения резервных копий
На локальном сервере на домашнем ПК, должно получится нечто подобное. Мы указали путь до созданной ранее папки Backup находящейся на диске D. Нажимаем кнопку Применить.
Далее, жмем Сохранить и закрыть
Настало время сделать резервную копию сайта. Нажимаем кнопку Начать резервное копирование
В следующем окне опять нажимаем Начать резервное копирование
Начинается процесс копирования, ждем его окончания
О завершении копирования сайта мы узнаем по следующему окну
Как видим, резервная копия сайта создана. При нажатии кнопки Управление резервными копиями можно посмотреть, что мы создали
А вот наша созданная копия на локальном сервере
При подключении файлового менеджера к сайту (что предпочтительно) можно так же увидеть, нашу сохраненную копию на реальном сайте, если Вы создавали ее там
Раскрыв папку, увидим файлы логов и, собственно, саму копию сайта
Сохраним эту копию сайта на локальном компьютере (на жестком диске вашего ПК) в любом удобном для Вас месте.
tryhimself.ru
Резервное копирование сайта - AEDStudio Joomla! Direction
Резервное архивирование (копирование) сайта является очень важным этапом в поддержке работоспособности сайта. Представим ситуацию - случилось непоправимое: на сайт проник вирус и безнадежно заразил его. Сайт надежно защищен? Вирус может проникнуть через другие сайты на аккаунте хостинга, если вы используете виртуальный хостинг. Бекапа нет? Вам предстоит громадная работа по восстановлению прежнего вида и работоспособности сайта. Произошел сбой на хостинге, сайт утерян. Нет бекапа? Восстановить сайт невозможно, придется создавать все с начала. Вы, по неопытности, внесли правки в ядро сайта, и добились критической ошибки? Если нет бекапа - с большой долей вероятности вам предстоит бессонная ночь, а то и не одна, в поисках собственной ошибки. Таких ситуаций много, все не перечислишь.
Избежать всех вышеуказанных проблем очень просто. Достаточно выполнять резервное копирование сайта. Чем чаще вы это будете делать - тем выше вероятность того, что при форс-мажорной ситуации информация на сайте не будет утеряна.
Резервное копирование (англ. backup) — процесс создания копии данных на носителе (жёстком диске, дискете и т. д.), предназначенном для восстановления данных в оригинальном или новом месте их расположения в случае их повреждения или разрушения.
ВикипедияСуществует два типа резервирования сайта:
- ручное копирование;
- автоматическое копирование.
Ручное архивирование
Ручное архивирование предполагает некоторые действия, которые вам нужно произвести вручную, для создания копии вашего сайта.
Для копирования сайта необходимо скопировать все файлы и папки, которые находятся в корне сайта. Если ваш сайт построен на CMS, то, наверняка, он использует Базы данных (CMS без использования Баз данных мы во внимание не принимаем в силу малого количества таких CMS). В этом случае архивирование файлов и папок недостаточно - необходимо выполнить и копирование Базы данных сайта.
Скопировать файлы и папки сайта можно несколькими способами: 1. Подключиться к серверу по протоколу FTP с помощью любого FTP-менеджера (например FileZilla, встроенный FTP-менеджер в Total Commander, CuteFTP и другие).
2. С помощью панели управления хостинга, где имеется свой менеджер файлов (в большинстве популярных панелей - ISP Manager, cPanel, vDeck, Plesk и многие другие).
3. По протоколу ssh - в случае если хостинг предоставляет вам доступ к серверу по ssh-протоколу.
Расписывать и описывать работу каждой FTP-программы и особенности каждой панели управления хостингом не имеет смысла, поскольку Вы без проблем найдете любую информацию о них в сети. Здесь я задам нужное направление в решении вопроса копирования Вашего сайта.
Копирование Базы данных выполняется через веб-интерфейс MySQL. Наиболее популярный из подобных приложений - phpMyAdmin. Также существуют удобные альтернативы - Chive или Adminer . Существуют и win-приложения для удаленной работы с базами данных - например dbForge Studio for MySQL.
Автоматическое архивирование сайта на CMS Joomla!
Автоматическое архивирование подразумевае первичную настройку скриптов резерирования с последующим автоматическим созданием копий сайта. Ниже перечислены наиболее популярные расширения для создания резервных копий сайта и БД.
Akeeba Backup
Akeeba Backup являет собой, пожалуй, наиболее популярный и мощный компонент для резервного архивирования сайтов на CMS Joomla! Существует два вида компонента - бесплатный и коммерческий. Функционала бесплатного расширения Akeeba вполне достаточно для удобного и быстрого архивирования сайта. Устанавливается расширение с помощью стандартного установщика Joomla! Бекап сайта Akeeba содержит в себе файлы и папки сайта, копию базы данных и скрипт для быстрого восстановления сайта. Бекап создается в zip-формате, или в собственном формате Akeeba - jpa. Компонент Akeeba Backup удобно использовать также для переноса сайта на другой сервер в случае, например, переезда на другой хостинг. Есть возможность создавать точки восстановления и выполнять архивирование на облачные сервисы. Присутвует русская локализация компонента. Компонент Akeeba Backup совместим с Joomla! 1.5, Joomla! 2.5 и Joomla! 3.xОфициальный сайт - www.akeebabackup.com
XCloner
Компонент XCloner является универсальным скриптом для создания резервных копий любых сайтов на PHP/MySQL. Имеет функцию автоматического копирования посредством cron'а. Позволяет делать архивирование больших Баз данных. Имеет собственный скрипт для восстановления бекапов. Умеет выполнять копирование на облачные сервисы. Имеется русификация компонента.XCloner совместим с Joomla! 1.5, Joomla! 2.5 и Joomla! 3.x Официальный сайт - www.xcloner.com
LazyDbBackup
LazyDbBackup - простой но достаточно популярный и полезный плагин для резервного копирования Базы данных сайта. Плагин является усовершенствованой модификации популярного плагина LazyBackup. К сожалению не имеет русского языка. Есть возможность загружать бекапы Базы данных в отдельную папку на сайте, либо отправлять копию Базы данных на email. Распространяется свободно.LazyDbBackup совместим с Joomla! 1.5 и Joomla! 2.5 Официальный сайт - www.joomxtensions.com/en/how-to-use-lazydbbackup.html
DataSafe Pro
DataSafe Pro - расширение для Joomla которое позволяет делать бекапы Базы данных. Очень удобно делать резервное копирование БД прежде чем вносить какие либо изменения на сайт. Также расширение позволяет делать копию базы данных по расписанию и отправлять дамп на email. Русского языка в стандартном пакете нет. Распространяется свободно.DataSafe Pro совместим с Joomla! 1.5, Joomla! 2.5 и Joomla! 3.xl Официальный сайт - www.php-web-design.com/Joomla-Components/datasafe-pro.html
SYPEXDumper
SYPEXDumper существует как в виде отдельного скрипта для бекапов баз данных, так и компонента под Joomla. Отличается высокой скоростью работы с базами данных и возможностью бекапить большие базы. Также есть возможность выполнять различные операции с таблицами базы. Скрипт разработан украинской компанией, поэтому с русификацией проблем нет. Есть как бесплатная так и платная версия.SYPEXDumper совместим с Joomla! 2.5 и Joomla! 3.x а также с любыми сайтами в виде php-скрипта. Официальный сайт скрипта - sypex.net Официальный сайт компонента - joomalungma.com/ru/com/sypexdumper
Easy Joomla Backup
Easy Joomla Backup - расширение для создания бекапов базы данных и файлов сайта от немецких разработчиков расширений. Имеет вполне достаточный функционал для резервирования баз данных и файлов сайта. Русификатора не имеет. Распространяется свободно.Easy Joomla Backup совместим с Joomla! 2.5 и Joomla! 3.x. Официальный сайт - joomla-extensions.kubik-rubik.de/ejb-easy-joomla-backup
jBackup
jBackup - плагин для создания бекапов базы данных от японского разработчика. Имеет вполне достаточный функционал для резервирования баз данных сайта. Русификатора не имеет. Распространяется свободно.jBackup совместим с Joomla! 1.5 Официальный сайт - www.joomler.net/extensions/71-jbackupdaily-db-backup.html
Выделю несколько тезисов:
Чем чаще вы обновляете свой сайт (добавляете контент, функционал, производите другие изменения) тем чаще необходимо делать резервирование сайта.
Периодически проверяйте работоспособность сделанных бекапов. Бывают ситуации, когда резервирование делается регулярно, но, когда приходит время восстановить сайт из копии, оказывается что копия неработоспособная.
www.dia.org.ua
Резервное копирование сайта на Joomla!
Одной из задач администрирования сайта является его постоянное резервное копирование. Конечно, многие хостеры ежедневно проводят резервное копирование клиентских сайтов, но как говорится «На Бога надейся, а сам не плошай». К тому же весьма неплохо иметь у себя на локальном хостинге актуальную версию сайта. Да и независимость от хостера не помешает - мало что с хостером может произойти. В этой статье описывается настройка и автоматизация пользовательского создания резервных копий с помощью компонента Akeeba Backup.
Последняя стабильная версия, на момент написания статьи была Akeeba Backup Core3.4.3, которую можно скачать по следующей ссылке. Существует две версии Akeeba Backup: Akeeba Backup Core, распространяемая бесплатно и Akeeba Backup Professional, распространяемая по подписке, стоимость которой от 50$ в год. В этой статье описана работа с бесплатной версией. Для работы компонента требуется версия PHP не ниже 5.2.
И так, входим в панель управления сайтом и переходим в "Менеджер расширений".
В секции «Загрузить файл пакета» нажимаем на кнопку «Обзор» и выбираем ранее скачанный установочный пакет. Затем нажимаем «Загрузить и установить».
Можно установит Akeeba Backup и другим способом, используя прямую ссылку в секции «Установить из URL». Но это будет связано с дополнительным риском. В процессе установки может произойти сбой связи, и пакет будет скачан и установлен не корректно. По-моему устанавливать пакет первым способом гораздо надежнее.
После успешной установки мы увидим следующее сообщение:
Очень хорошо! Компонент установлен. Таким же образом скачиваем по этой ссылке и установливаем русификатор. Затем переходим в меню «Компоненты» и выбираем Akeeba Backup. Откроется окно обновления конфигурации Akeeba Backup.
Первые две опции: «Включить откат системы к точке восстановления» и «Включить уведомления по электронной почте об обновлении компонента» недоступны в бесплатной версии. Последняя бесплатная версия с этими возможностями была 3.3.5 – она пока ещё доступна для скачивания на сайте разработчика. Сейчас эти возможности присутствуют в коммерческой версии компонента. Вкратце скажу, что откат системы – это очень полезная возможность. Не нужно восстанавливать весь сайт после каких либо неудачных действий, достаточно просто откатить его к точке восстановления. Естественно, что точка восстановления должна уже существовать. Опять же следует понимать, что под точку или точки восстановления, так же как и под резервную копию требуется некоторое файловое пространство.
Функция уведомления об обновлении компонента добавляет удобство для администратора сайта, но не более того.
По-умолчанию, предлагается запустить «Мастер настройки», который автоматически настроит компонент в соответствии с настройками сервера. Сразу же «мотаем себе на ус», что при обновлении компонента «Мастер настройки» запускать не стоит. Я думаю, что ознакомившись с настройками программы впоследствии лучше выключить «Мастер настройки», тем более что его всегда можно запустить из панели управления Akeeba Backup. Ну что ж, посмотрим работу «Мастера» - нажмём «Применить».
Мастер проделает несколько тестов и настроит компонент. После успешного тестирования можно сразу же сделать резервную копию, но мы сначала перейдём в панель управления Akeeba Backup, чтобы ознакомиться с настройками. Нажимаем на кнопку «Панель управления» в верхнем левом углу.
В верхней части панели управления Akeeba Backup есть быстрое меню. Оно состоит из четырех ссылок: «Настройка», «Начать резервное копирование», «Управление резервными копиями», «Просмотр журнала». Все эти ссылки дублируют кнопки с аналогичными названиями. Ниже меню расположена секция переключения профилей. Профили нужны для создания различных видов резервных копий. Т. е. одному профилю можно назначить полное резервное копирование сайта, а в другом профиле настроить бэкап, исключив из него какие либо файлы или таблицы MySQL.
Ниже расположена секция основных операций. Она состоит из восьми кнопок. Первая кнопка - это кнопка мастера настройки. Если после манипуляций с настройками компонента перестали создаваться резервные копии и были забыты изначальные настройки, то можно запустить «Мастер настройки» и он вернёт их в первоначальный вид.
Следующая кнопка – это «Менеджер профилей». Здесь задаются названия дополнительных профилей, если они нужны. Если хотите поэкспериментировать, то создайте тестовый профиль и «поиграйте» с настройками.
Следующая кнопка – это собственно «Настройки».
Большинство настроек интуитивно понятно. Понятно, что в настройке «Папка для сохранения резервных копий» указывается путь к директории с резервными копиями. По умолчанию это папка /administrator/components/com_akeeba/backup, расположенная в корне нашего сайта. С помощью кнопки «Просмотр» можно изменить путь к папке с резервными копиями. При указании пути можно использовать следующие переменные: [DEFAULT_OUTPUT] – папка по умолчанию, [SITEROOT] – корневая папка сайта и [ROOTPARENT] – папка уровнем выше корневой папки сайта. В большинстве случаев удобнее использовать переменные, так как при восстановлении из резервной копии в ту же директорию или при переносе сайта с локального хостинга на публичный хостинг, не потребуется менять эту настройку. Напишем [DEFAULT_OUTPUT].
Уровней журналирования пока всего два: «Вся информация и отладочные данные» и «Ничего». Если создание резервных копий отлажено, то журналирование можно выключить, в противном случае лучше оставить в значении по умолчанию. Оставим пока значение«Вся информация и отладочные данные», а после создания нескольких резервных копий отключим журналирование.
Имя файла резервной копии можно сформировать, включив или отключив переменные: HOST (имя хоста, сайта), DATE (дата создания резервной копии вида ГГГГММДД) и TIME (соответственно время создания). Например, напишем [DATE]-[HOST].
Тип резервной копии подразумевает: или копирование всего сайта, или копирование только базы данных сайта. Оставляем пока значение по умолчанию – копирование всего сайта.
Включать опцию «Использовать фреймы (IFRAMEs) вместо технологии AJAX» имеет смысл, только если, при попытке создания резервной копии процесс прерывается, как пишет разработчик, «странными ошибками». Оставляем отключенной.
Включать следующую опцию рекомендуется, если по какой либо причине невозможно использование временной папки сайта на хостинге. По-моему в этой опции нет большой нужды и её тоже не включаем.
Дополнительные настройки оставляем по умолчанию. Новичку их настраивать не стоит. Пока изменять «Способ архивирования» мы не будем. Об его изменениях будет упомянуто ниже в этой статье.
Следующая группа настроек – «Квоты». Здесь можно настроить ограничение на количество и размер резервных копий. Настройка «Сохранять устаревшие записи» позволяет ввести квоту на количество резервных копий, файлы которых были удалены. Эти записи отображаются на странице «Управление резервными копиями». Если вы хотите, чтобы отображались записи обо всех созданных бэкапах даже, если их файлы удалены, то поставьте ноль. Оставим 10.
Первые опции «Включить квоту на размер» и «Величина квоты» определяют ограничения для всего архива резервных копий. Вторые опции с теми же названиями определяют ограничения для одной резервной копии. Включать квоты на размер полезно, так как в один прекрасный день можно исчерпать дисковое пространство, отведённое под сайт или получить огромную резервную копию, которую сложно передавать по медленному каналу связи. Следует так же учитывать, что даже если резервная копия состоит из нескольких частей, то квота не будет рассчитывать часть резервной копии как отдельный файл. Величина квоты подбирается эмпирически и зависит от «веса» сайта и свободного хостинг пространства.
Тонкие настройки относятся к времени выполнения этапов создания резервной копии. Минимальное время выполнения нужно для обхода блокировок против DoS-атак. Максимальное время (тайм-аут) выполнения задаётся с целью предотвратить возможные зависания на промежуточных этапах создания резервной копии. Последний же временной параметр определяет, насколько консервативным будет компонент, когда пытается избежать тайм-аута. Скажем так – это погрешность максимального времени выполнения. Вот и все настройки создания бэкапа.
Теперь создадим резервную копию. Следующая кнопка в панели Akeeba Backup как раз для этого и предназначена. Вообще же запустить создание резервной копии можно несколькими способами: по ссылке из быстрого меню, по кнопке в панели управления компонента и по кнопке в панели управления Joomla, которая появилась после установки Akeeba Backup.
Судя по надписи на кнопке, нам таки требуется резервное копирование. Ну а раз так, то приступим. Перед этим замечу, что по умолчанию подразумевается создание резервной копии один раз в сутки. Т. е. если резервное копирование проводилось более суток назад, то статус кнопки в панели управления Joomla будет "Требуется резервное копирование"
Всё, что нам нужно, так это нажать кнопку «Начать резервное копирование!». При желании можно поправить «Краткое описание» и если нужно, написать «Комментарии к архиву». Краткое описание вы будете видеть в окне «Управление резервными копиями». Комментарий пригодится при установке какого-нибудь модуля или компонента. Например: «До установки AdminExile» или «Первая резервная копия».
Во время создания резервной копии лучше ограничить себя в работе с клавиатурой и мышью, если у вас активно окно браузера, в котором отображается процесс создания резервной копии.
После удачного резервного копирования перейдём в «Управление резервными копиями». В этом окне мы будем видеть резервные копии. Последняя резервная копия по умолчанию будет находиться вверху списка. Для каждой записи указываются: ID копии, краткое описание (если был комментарий, то рядом с описанием будет показан информационный значок с всплывающей подсказкой-комментарием), дата и длительность создания резервной копии, статус процесса (если всё хорошо, то увидим ОК), источник запуска процесса резервного копирования (мы запускали из Админки), тип резервной копии (в нашем случае «Копирование всего сайта»), профиль, размер бэкапа и его имя. Причём есть возможность скачать резервную копию с помощью браузера, хотя это и не рекомендуется с точки зрения безопасности и целостности резервной копии. В руководстве по быстрому старту такое скачивание резервных копий называется простым, но не рекомендуемым. Рекомендуемый способ я описал ниже.
Выйдем по стрелке в панель управления Akeeba Backup. Следующая кнопка называется «Просмотр журнала». Записи в журнале нужны для отладки, решения проблем с созданием резервного копирования. В окне просмотра нужно выбрать источник резервной копии. В нашем случае это «Админка». Записи журнала, при желании можно выгрузить в файл и просматривать его офлайн у себя на компьютере. Для этого нужно просто нажать кнопку «Загрузить файл журнала».
Следующая кнопка «Параметры компонента» в панели управления Akeeba Backup отвечает за настройку параметров самого компонента. Настройки параметров расположены в четырёх вкладках: «Права», «Резервное копирование с сайта», «Обновление» и «Безопасность».
На вкладке «Права» настраиваются права доступа к использованию компонента. По умолчанию всеми правами обладает «Суперпользователь», «Администратор» имеет доступ к компоненту, но не имеет прав для его настройки и использования. Все остальные пользователи не имеют доступа к компоненту. Ничего не меняем.
На вкладке «Резервное копирование с сайта» задаются параметры, нужные для настройки резервного копирования по расписанию. О них я расскажу ниже, в этой же статье.
На вкладке «Обновление» выключаем опцию «Обновлять только релизы для разработчиков». Опцию же «Минимальная стабильность релиза для уведомлений об обновлении» выставляем в положение «Stable».
На вкладке «Безопасность» ничего не меняем. По умолчанию шифрование должно быть включено.
Последняя кнопка в группе «Основные операции» служить для обновления программы. Для работы с обновлениями нужна поддержка curl в PHP. Пример включения поддержки curl в модуле PHP на хостинге рассматривается во второй части этой статьи. Как только выйдет новая версия компонента вид кнопки будет такой:
Нажимаем эту кнопку и запускаем обновление Akeeba Backup. У меня с обновлением этого компонента никогда не было проблем.
В панели управления Akeeba Backup ниже группы «Основные операции» расположена группа «Извлечь данные из архива», состоящая из двух кнопок: «Исключить файлы и папки» и «Исключить таблицы базы данных». С помощью первой из них можно запретить включать в резервную копию, какие либо файлы и папки сайта.
Вторая кнопка отвечает за исключение из резервного копирования, каких либо таблиц базы данных.
Использовать возможности исключения файлов, папок и таблиц следует крайне осторожно, в противном случае восстановится не работоспособный сайт.
В этой части статьи мы рассмотрели установку и настройку компонента Akeeba Backup, создали резервную копию сайта. В следующей части рассмотрим настройку создания резервных копий по расписанию.
Об авторе:
Меня зовут Андрей Золкин. Из более, чем пятнадцати лет работы в сфере информационных технологий, десять лет работаю с системами, базирующимися на открытом исходном коде. На страницах сайта Aitishnik.Ru веду блоги по CMC Joomla и Debian GNU/Linux.
Ещё статьи о Joomla 2.5
-
Joomla авторизация через соц. сети
В последнее время стало «модно» предоставлять посетителям сайта возможность регистрации и авторизации, используя свои учетные записи в социальных сетях. В этом есть определенная логика - не каждый хочет проходить регистрацию на сайте. По...
Материалы в Joomla 2.5 Категории
В предыдущей статье мы познакомились с общими сведениями о материалах в Joomla. Теперь подробнее познакомимся с категориями материалов. И для этого перейдём в «Менеджер категорий». Категории материалов нужны для систематизирования информации и удобной её подачи пользователям сайта. Категории – это своего рода папки для материалов (статей). Определённая...
Яндекс карта и карта Гугл в Joomla 2.5
В разделе «Контакты» многих сайтов присутствует карта или схема проезда до нужного объекта. Зачастую, карты присутствуют не только в контактах и не только в единичном количестве. Раньше роль карт играли статические изображения этих самых...
Шаблоны на Joomla, коренные отличия от аналогов...
Макеты на основе этой системы предоставляются в достаточно широком ассортименте. Тех, кто желает иметь собственный интернет-ресурс, привлекает огромный выбор расширений, легкость управления. Шаблоны сайтов используют как разработчики...
Установка Joomla 2.5
Установка Joomla 2.5 довольно проста и не занимает много времени. В этой статье рассматривается установка CMS Joomla (Джумла) в общем виде на локальный компьютер. Установка и настройка вэб-сервера и дополнительных программ рассматриваются в предыдущей...
Настройка Apache, MySQL, PHP
Открываем в текстовом редакторе конфигурационный файл вэб-сервера Apache. Он называется httpd.conf и находится в корневой папке сервера, в поддиректории conf. В нашем примере C:\www\conf\httpd.conf. Найдём и раскомментируем (удалим...
www.aitishnik.ru
Простой способ автоматического создания бекапа joomla сайтов с помощью Akeeba backup + Crontab
Всем привет. Хочу описать процесс полностью автоматического создания резервных копий сайтов на CMS Joomla с помощью компонента Akeeba backup, причем его бесплатной версии. Знаю, что джумлу на хабре не особо жалуют, но думаю все же найдутся хабровчане, которые создают сайты с её помощью. В качестве примера буду использовать Joomla 2.5.16 Первым делом нам нужно установить компонент Akeeba Backup. Скачать его можно отсюда: www.akeebabackup.com/downloads/akeeba-backup.htmlЧто из себя представляет резервная копия, сделанная с помощью Akeeba backupНа выходе мы получим файл с расширением jpa, который включает в себя все файлы нашего сайта, а также дамп базы данных. Данный бекап очень легко накатить на любой сервер, следуя пошаговым инструкциям. Как это сделать, напишу ниже.
Мой сайт находится на хостинге timeweb, но я думаю, что большинство хостингов имеет в своей панели управления способ создавать задания с помощью планировщика crontab. Если ваш сайт находится на собственном сервере, тут еще проще.
Первым делом нам необходимо активировать возможность делать бекап не только из панели Joomla. Для этого переходим в Компоненты -> Akeeba backup -> Component Parameters. Нужно установить переключатель на ДА в свойстве Enable front-end and remote backup. Указать секретное слово, которое будет использоваться для генерации ссылки, опционально можно включить уведомления по e-mail о выполнении бекапа.
Теперь необходимо написать небольшой shell скрипт, который будет запускаться планировщиком Crontab. Выглядит он так:
#!/bin/bash wget --max-redirect=10000 "http://<Адрес сайта>/index.php?option=com_akeeba&view=backup&key=<Секретное слово, которое мы указывали в настройках>" find ${<Полный адрес до каталога с бекапами>} -type f -mtime +<Возраст файла в днях> -delete #Например find ${/site/BACKUP} -type f -mtime +30 -delete - удалит все файлы старше 30 дней Данный скрипт осуществляет бекап нашего сайта.После чего необходимо указать планировщику Crontab периодичность бекапа. Для хостинга timeweb это делается так: Панель Crontab. Далее выбрать Добавить новую задачу Пишем название нашего задания, тип файла: SH сценарий, указываем путь до файла на нашем сервере (естественно файл со скриптом должен быть заблаговременно залит на сервер), ну и выбираем нужную нам периодичность бекапа.
Если у вас есть полный доступ к серверу, на котором располагается сайт, то нужно занести строчку в конфиг crontab, по умолчанию расположенный в /etc/ с именем crontab
Всё, теперь наши бекапы будут делаться в автоматическом режиме по расписанию и складываться в каталог, прописанный в настройках компонента Akeeba Backup. По умолчанию: administrator/components/com_akeeba/backup/
В дальнейшем планирую расширить bash скрипт, чтобы он удалял устаревшие бекапы и также переносил эти файлы на дропбокс. Если есть какие-то мысли, как это сделать, прошу поделиться в комментариях.
Как восстанавливать сайт из резервной копииДля того, чтобы восстановить сайт или перенести его на другой сервер, необходимо скачать набор файлов под названием Akeeba Kickstart: www.akeebabackup.com/downloads/akeeba-kickstart.htmlЭтот набор включает в себя следующие файлы:
- jquery.min.js-библиотека Jquery
- json2.min.js-библиотека Json
- kickstart.php-PHP скрипт, выполняющий восстановление
- ru-RU.kickstart.ini-язык локализации
Необходимо поместить эти файлы на сервер и туда же скинуть файл с бекапом, который имеет расширение jpa. Далее просто пройти по адресу: http://<Ваш сайт>/kickstart.php и следовать инструкциям. Если вы восстанавливаете сайт на том же сервере, где он и был, то часть настроек подтянется автоматически, иначе нужно будет указать новые настройки для корректного формирования конфига: путь к БД, имя БД, имя пользователя БД и тд. После выполнения всех инструкций, система восстановит сайт. И никаких танцев с бубном с перезаливкой руками всех файлов(особенно противно это делать по FTP), а также ручной правкой конфигурационного файла configuration.php в корне сайта.
UPD 17.12.2013: Расширил скрипт, теперь он удаляет устаревшие бекапы.
UPD 16.05.2014: Хотел заморочиться с отправкой бекапа на дропбокс, но выходит больно кропотливо, гораздо проще использовать облачное хранилище с поддержкой WebDAV, я использовал Яндекс диск. Вот так выглядит скрипт:
#!/bin/bash #переходим в каталог, в который складываются бекапы, сделанные Akeeba Backup cd site/backup for i in *.jpa; do # username:password - имя пользователя и пароль к аккаунту Яндекса # указанные в пути каталоги /backups/sites/ должны быть предварительно созданы в Яндекс диске curl -T ${i} --user username:password https://webdav.yandex.ru/backups/sites/ # при желании можно удалять эти бекапы с веб сервера для экономии места командой rm rm ${i} done Ну и создаем по аналогии задание в cron под запуск скриптаhabr.com