Очень краткая инструкция по обновлению сайта, работающего на «Друпал». Для простоты предполагается, что дистрибутив копируется с одной удаленной машины на другую, и у нас открыто два терминала (PuTTY, xterm, …)
ls | xargs, чтобы
получить одной строкой список файлов, которые нужно будет обновить
(см. следующий пункт) — получится строка в духе
includes/ misc/ modules/ profiles/ scripts/ themes/ cron.php index.php install.php update.php xmlrpc.php robots.txt
rm -rf <вывод команды из предыдущего пункта>
scp -r * .htaccess login@hostname.example.com
Пункты 3 и 7 разделены, чтобы максимально уменьшить нахождение сайта в режиме обслуживания.
Инструкция соствлена на основе пота и крови, пролитых при работе над и обслуживании моих родимых кафедрального сайта и Вычислений ВысокоПроизводительных (ВВП).
Комментарии
отключение модулей
Меня давно волнует такой вопрос, как быть с пунктом 5-ым "Отключение сторонних модулей" - ведь если их отключать через список модулей тем же путем, как производится установка, то модули фактически выполняют свою де-инсталяцию и удаляют все свои настройки. Так ведь? т.е. придется потом заново перенастраивать.
Или вы отключаете как-то по другому?
Я последнее время данный пункт не выполняю и обновление вроде как проходит успешно.
Обновления
Нет, модули не производят свою деинсталляцию, когда их просто отключаешь. Возможно запрограммировать модуль таким образом, чтобы он сбрасывал свои настройки, при отключении, но практике мне такие не встречались. Все модули после выключения/включения сохраняют свои настройки.
Они сбрасывают настройки и удаляют свои таблицы, когда на странице модулей, на вкладке Uninstall выбираешь и деинсталлируешь модули, для которых это возможно. И деинсталлировать можно только отключенные модули.
А чаще всего, даже деинсталляция недоступна, ибо если модуль простой, то никто не заморачивается, чтобы удалить одну-две переменных настройки. Так они и лежат мусором, в таблице
variables...Я кстати тоже ничего не отключаю, просто "на живую" перезаписываю изменившиеся файлы, а потом из админки запускаю update.php. Никаких сбоев ещё не было, при обновлении минорных версий модулей и самого друпала. По-хорошему да, надо отключать, прежде чем обновлять.
Вообще, в линуксе, (если сервак, на котором хостится сайт, вам доступен под root'ом), очень удобно поставить CVS и обновляться прямо из репозитория на drupal.org, или из собственного репозитория, если используешь что-то нестандартное, например хаки. (Разумеется, в этом случае можно поставить не только CVS, но и Subversion, Git, или чего душа пожелает.) Время, потраченное на обновления, в этом случае минимально, а если ещё и мультисайтинг при этом есть, то вы, считайте, одним кликом все сайты обновляете. Как-нибудь напишу об этом.
Admin is here.
Благодарю за
Благодарю за подробный ответ.
На самом деле тема про CVS весьма интересна. Очень в общих чертах представляю что это такое, но все время не было поводов разобраться. Но в таком контексте как вы пишите про возможности при обновлении... чувствую надо вникнуть и как можно подробней.
Если вдруг у вас на примете есть какие-нить полезные ссылки на данную тему - буду признателен. В частности если намекнете, как лучше при этом организовать обновление, ну и просто образовательное на тему CVS: установка, использование и т.п.
Мож получится по вашим источникам самому разобраться, пока статью не напишите.
Извиняюсь за
Извиняюсь за долгий ответ.
Буду предполагать, что вы знаете, что такое CVS. Я нашёл несколько документов на drupal.org, изучив которые вы сможете решить большинство своих вопросов, я думаю. Правда, всё на английском. Вот они:
Our code repositories for core and contrib - это вам в первую очередь понадобится, чтобы извлечь из хранилища новую версию или нужный релиз Drupal или его модулей.
Drupal and CVS - основательная подшивка о том, как используется CVS в Drupal.
TortoiseCVS (Win) - описание работы с визуальным агентом CVS под Windows (это глава из вышеуказанной подшивки).
Apply for contributions CVS access - статья о том, как получить доступ к CVS Друпала, чтобы было можно фиксировать свои модули/патчи и т.д.
Как работать с CVS на drupal.org? - этим вопросом задался один из друпаллеров. Статьи как таковой по этому адресу нет, зато на русском. Оттуда можно почерпнуть много полезных ссылок о CVS.
Admin is here.
Благодарю!
Благодарю! Полезно.
CVS Book
Самое лучшее, что я видел по CVS - это следующая книга:
Fogel K., Bar M. - Open Source Development with CVS
(по-моему, она свободно доступна)
Там, конечно, упор делается на обычную разработку ПО, но может быть и в контексте сайтостроительства будет полезна.
Инструкция по VDS
Вот здесь я написал памятку по использованию Drupal-CVS на сервере - http://andyceo.ruware.com/blog/andyceo/vds-drupal-cvs
Листайте в конец статьи, ищите заголовок "памятка".
Отправить комментарий