Подготовка обновления Drupal 6,7 до Drupal 8. Как обновить drupal 8 вручную
Как обновить модуль в друпал 8 версии
Несмотря на то, что версия Друпал под номером 8 вышла уже достаточно давно, на данный момент все еще очень много процессов, которые нормально не описаны и требуют дополнительных знаний. Как ни странно, один из подобных банальных процессов - обновление модулей в drupal 8. Если вы уже пользовались какой-либо версией Друпал, то должны иметь представление о порядке апдейта модулей. В принципе, процесс обновления модулей для drupal 8 практически ничем не отличается от этой задачи с модулями для 7 версии ядра. Но есть определенные нюансы. Обо всем далее по порядку.
Начнем с того, что функционал последней 8-й версии Друпал не предусматривает наличия возможности отключения модулей. Я сейчас говорю именно об отключении, а не удалении. Об этом я даже написал отдельный материал: отключение модулей в друпал 8. Но, в принципе, в случае с обновлением модулей это не столь критично. Вы просто должны знать, что временно отключить модуль, просто сняв галочку в чекбоксе (как это было в drupal 7) у вас не получится (без установка дополнительных модулей). Потому порядок наших действий будет следующий:
Процесс обновления модуля для сайта на Друпал 8 вручную
- Первое, что вам нужно сделать (и чем обычно большинство создателей сайтов брезгует) – ознакомиться с информацией об обновлениях данного модуля. Часто бывает так, что у новых версий имеются специфические требования к ядру сайта или другим необходимым модулям.
- Дальше качаем последнюю версию модуля для Друпал 8 на официальном сайте, скачиваем ее и распаковываем в удобном месте.
- Третье ваше действие - это бэкап базы данных и вашего сайта (задача максимум), либо же – хотя бы сохранить папку с установленным модулем (из папки http://ваш_сайт/modules/*) для восстановления работающей версии, если что-то пойдет не так.Работая на сайте с Друпал 8 стоит привыкнуть к частым бэкапам. Конечно, если – человек рисковый, то можете продолжать дальнейшие действия и без резервирования.
- Далее переключаем сайт в режим обслуживания. Для этого проходим в http://ваш_сайт/admin/config/development/maintenance, ставим галочку возле «Перевести сайт в режим обслуживания» и кликаем кнопку «Сохранить». Это нужно для того, чтобы ваши посетители не генерировали ошибки на сайте в то время, когда вы обновляете модуль.
- Следующим шагом по обновлению модуля для drupal 8 будет полное удаление папки со старой версией модуля. А после этого копируете на то же место папку с ранее скачанной новой версией модуля. Обращаю ваше внимание, что нужно именно удалить старую версию, а не копировать новую папку с заменой файлов. Конечно, вариант с заменой без удаления тоже имеет право на жизнь, но этот метод более рисковый.
- Когда папка с новой версией модуля помещена в /modules/*, нужно обязательно пройти по адресу http:// ваш_сайт/update.php и запустить скрипт обновления. Пройдя все шаги, вы получите готовый к работе сайт с последней версией того модуля, который вы обновляли.
- Заходим на главную страницу сайта, убеждаемся в том, что сайт нормально работает, а обновленный модуль присутствует в списке модулей.
- Переводим сайт в рабочий режим: заходим в http://ваш_сайт/admin/config/development/maintenance, убираем галочку возле «Перевести сайт в режим обслуживания» и кликаем кнопку «Сохранить».
Стоит отметить, что есть более простой способ обновления модулей для Друпал 8, но он менее безопасен. В этом случае апдейт производится в автоматическом режиме со всеми вытекающими последствиями. Зато он быстрее и проще. Порядок действий таков:
Автоматическое обновление модулей в drupal 8
- На всякий случай не забываем сделать бекап файлов и базы данных.
- Заходим на страницу проверки обновлений (/admin/reports/updates/update) и смотрим, есть ли доступные для обновления модули. Если такие присутствуют в списке, то отмечаем галочкой те модули, которые вы хотите обновить. Затем кликаете кнопку "Скачать обновления".
- Перед непосредственно скачиванием вам будет предложено обновляться в "режиме обслуживания". Соглашаемся - это логично и правильно (галочку оставляем отмеченной). Происходит процесс установки обновления.
- Следующим шагом система предложит нам обновить базу данных. Проходим по ссылке, обновляем. Если есть доступные обновления для базы данных - устанавливаем их. Но они бывают не всегда, так что не удивляйтесь, если система просто предложит вам перейти к своему сайту без обновления БД.
На этом процесс обновления модуля на сайте с drupal 8 можно считать завершенным. Удачных вам обновлений ;)
memos.link
1.2.1. Обновление модулей и ядра Drupal 8.
Очень часто для модулей и ядра Drupal 8 выходят обновления. Не все обновления стоит ставить, главное обращать внимания на обновления безопасности. Друпал подсвечивает сообщения о таких обновлениях красным цветом:
О том как обновлять Drupal 8 можно прочитать на официальном сайте друпала:https://www.drupal.org/node/1494290
Но меня смущает то, что предлагают удалить все файлы старого друпала. А ведь в них могут храниться сторонние библиотеки, например для Drupal Commerce.
1. Поэтому прежде чем делать обновления друпала и модулей сделайте полную копию сайта и базы данных.
Базу данных вы можете скопировать через adminer, вот статья по этому поводу:http://drupalbook.ru/drupal/15-vybor-hostinga-pokupka-domennogo-imeni-perenos-sayta-na-hosting
2. Скачайте последнюю версию модуля (ядра друпала) для 8.x ветки.
3. Разархивируйте модуль или друпал отдельно от сайта. Нужно проверить папку vendor возможно чего в ней может не хватать, придется их потом скопировать отдельно. Дополнительные библиотеки могут добавиться с новой версией. Например я устанавливал Drupal Commerce и у меня были дополнительные библиотеки:
Дважды проверьте что у вас есть копия сайта перед обновлением.
Я не уверен что все пройдет гладко если залить файлы поверх с заменой. Я пробовал так обновляться с одной бета версии на другую бету версию, сайт поломался. Но когда обновлял файлы таким образом с 8.0.1 до 8.0.5 все прошло хорошо. Но думаю такое не сработает с переходом на ветку 8.1.0.
4. Установите режим обслуживания, чтобы никто не заходил на сайт и не генерировал ошибки пока вы выполняете обновления:/admin/config/development/maintenanceНе забудьте снять галочку после обновления, чтобы вернуть сайт в рабочее состояние.
5. Дальше нужно удалить все файлы друпала, кроме папки /sites, /themes/, /modules. В sites лежат файлы содержимого: фотографии, конфигурации, сгенерированные файлы; в папке themes наши кастомные темы для друпала; в папке modules наши дополнительные модули для друпала. Тут нужно прочитать мануал до конца прежде чем кинуться удалить файлы. Проверьте в третий раз, что у вас есть копия сайта, чтобы если что вернуться обратно. В это время когда вы удалите все файлы, сайт не будет работать пока вы не скопируете файлы нового ядра друпала обратно, а друпал состоит из ~10000 файлов, если у вас медленный интернет и вы будете копировать файлы по фтп в 2-3 потока, то это может растянуться на час полтора. Поэтому принимаем меры, чтобы это все прошло быстрее. Опять же я описываю общий случай, когда ваш сайт лежит уже на хостинге, обновиться локально на OpenServer'е проще.
6. Теперь нужно скопировать все файлы новой версии друпала на сервер, кроме папки /sites, /themes/, /modules. Учимся работать с SSH и командной строкой (если хостинг для сайта позволяет использовать SSH , прочитайте доступы к хостингу или обратитесь в тех поддержку с вопросом, а есть ли возможность использовать SSH на хостинге). Через командную строку мы сможем быстро разархивировать весь друпал, нам нужно будет только залить файл архива на сайт:
Для архива tar.gz:
tar -xvzf archive.tar.gz
или zip архива:
unzip archive.zip
Если есть доступ по SSH, можно воспользоваться и WinSCP:
https://winscp.net/eng/docs/lang:ru
Вы можете воспользоваться его коммандами для разархивации:
https://winscp.net/eng/docs/custom_commands
Или пересоздать tar.gz архива, чтобы в нем лежали сразу файлы друпала, а не папка с файлами друпала. В этом вам может помочь 7Zip:
http://www.7-zip.org/
Пересоздаете архив, сначала выделяете все файлы и через контекстное меню выбираете 7Zip -> Add to archive. Archive формат выбираете tar. После того как tar архив будет создан, выбираете tar архив и снова в контекстном меню выбираете 7Zip -> Add to archive. Теперь будет доступно создание архива gzip (именно gzip, tar не сжатый формат архива, zip не поддерживаете контекстным меню Winscp, а gzip или tar.gz архив). Заливаете архив на сервер (также через winscp) и на сервере уже через меню нажимаете разархивировать:
7. Иногда нужно изменить settings.php вручную, но обычно об этом вы всегда сможете прочитать на странице статуса сайта:/admin/reports/status
8. Если вы изменяли .htaccess, robots.txt файлы, то внесите снова эти правки.
9. Если у вас был свой favicon.ico, то скопируйте его снова.
10. Залогинтесь на сайт под администратором.
11. Запустите файл update.php, например http://drupalbook.ru/update.php
12. Отключите режим обслуживания./admin/config/development/maintenance
Если сайт для вас важен, то не используйте его как тестовую площадку, создайте локальную копию сайта на OpenServer. Попробуйте обновить сайт локально, чтобы проверить, что ошибок не возникнет. Если у вас возникают ошибки, пишите в комментариях, попробуем разобраться.
drupalbook.ru
Подготовка обновления Drupal 6,7 до Drupal 8.
Это перевод статьи из официальной документации с сайта drupal.org .Источник: https://www.drupal.org/node/2350603Если мне не показалось, назревают желания и необходимость миграции drupal.ru на следующую версию drupal.Начать наверное лучше с теории.Если дело пойдет, переведу остальные материалы по данной теме.
Подготовка обновления Drupal 6,7 до Drupal 8.
Перед обновлением вашего сайта на Drupal 6,7 до Drupal 8, чтобы добиться желаемого результата , необходимо принять меры для обеспечения процесса обновления.
В отличии от предыдущих крупных обновлений версии ядра Drupal, текущее обновление не изменит версию Drupal исходного сайта, а перенесет на «новый» сайт на Drupal 8 настройки и контент.Но даже в этом случае, не следует проводить обновление на «живом» сайте, а обновляться только с копии исходного сайта.
Требования
- Свежая установка Drupal 8 с включенным модулем ядра Migrate Drupal.
- База данных исходного сайта (на Drupal 6,7) должна быть доступна на хосте с «новым» сайтом.
- Необходим доступ к файлам исходного сайта (папка sites/default/files при стандартной установке). Если файлы сайта храняться в «публичной» папке, то файлы будут доступны через их url (адрес). Если файлы сайта храняться в «приватной» папке, то папка должна быть перенесена в место, доступное «новому» сайту.
- Необходимо скачать и установить на сайт с Drupal 8 модуль Migrate Upgrade (https://www.drupal.org/project/migrate_upgrade)
- Если вы планируете выполнить обновление при помощи Drush, необходимо установить Drush 8 (https://github.com/drush-ops/drush#install---composer) и модуль Migrate tools (https://www.drupal.org/project/migrate_tools)
- Если вы будете переносить с исходного сайта «приватные» файлы , необходимо указать в параметре $settings['file_private_path'] в файле settings.php, путь к директории с приватными файлами.
Необходимые модули
Перед стартом переноса, необходимо включить на «новом» сайте модули, использованные на исходном .Например если на исходном сайте был использован модуль Book, чтобы был перенесен контент и иерархия материалов книги, необходимо включить этот модуль на сайте на Drupal 8.
Не пытайтесь до окончания переноса настраивать «новый» сайт.
Имейте в виду, что процесс обновления перезапишет файлы конфигурации Drupal 8 на новом сайте, поэтому не вносите в них никаких изменений, пока процесс переноса не будет завершен.Это означает, что вы не должны создавать все типы контента и поля вручную перед запуском обновления. Модуль Migrate создаст их во время процесса пареноса сайта.В этом отличие работы модуля Migrate, используемом для обновления сайта до Drupal 7. Который требовал наличие уже настроенных типов контента и полей, перед запуском обновления.
drupal.ru
Как выполнить обновление модулей Drupal
Из предыдущих уроков вы узнали, что такое модули, как их устанавливать, удалять, выполнять локализацию и перевод строк. А в этом уроке давайте с вами поговорим о том, как выполнить обновление модулей Drupal.
Модули постоянно дорабатываются и улучшаются разработчиками со всего мира, исправляются ошибки, добавляются новые функции и в следствии этого, время от времени выходят новые версии модулей. И чтобы получить доступ ко всем новым функциям модуля, нужно выполнять обновления.
Прежде чем обновлять какой-либо модуль, советую делать бэкап сайта, на тот случай, если что-то пойдет не так. С резервной копией вы всегда сэкономите себе много времени и нервов.
Обновление модулей
Выполнить обновление модулей Drupal можно двумя способами:
- Автоматически
- Вручную
Давайте рассмотрим каждый из этих способов более детально.
1 способ – Автоматический
Сообщение с информацией о доступных обновлениях сразу же отображается при входе в раздел «Расширения». Движок следит за актуальностью модулей и при выходе обновлений сразу же оповещает вас об этом.
Чтобы выполнить обновление, вы можете сразу в этом же сообщении нажать на ссылку – «доступные обновления».
Таким образом, вы попадете в раздел «Отчеты» > «Доступные обновления» во вкладку «Обновить». Здесь вам просто необходимо поставить галочку напротив модуля Token (1) и нажать кнопку «Скачать обновления» (2).
Я же использую немного другой способ автоматического обновления модулей. Я перехожу в раздел «Расширения», открываю вкладку «Обновить» и здесь точно также выставляю галочку напротив модуля Token. После этого, остается нажать кнопку «Скачать обновления».
Начнется загрузка и после этого появится соответствующее сообщение. Чтобы завершить обновление модуля на сайте, необходимо нажать кнопку «Продолжить».
На открывшейся странице появится сообщение об успешном обновлении модуля Token. И последнее, что нам остается сделать – это запустить обновление базы данных. Для этого, нажмите на ссылку – «Запустить обновления базы данных».
Если вы выполняете обновление базы данных не на локальном сервере, а на хостинге для действующего сайта, то вы можете перевести сайт в режим технического обслуживания (1). И только после этого нажать кнопку «Продолжить» (2). Если же вы выполняете обновление модуля локально, то можете сразу жать кнопку «Продолжить».
В моем случае для модуля Token обновлений в базе данных не оказалось. Если же для вашего модуля будут доступные обновления, то выполните их, нажав соответствующую кнопку.
Теперь давайте вернемся в админку Drupal, для этого нажмите на ссылку – «Страницы администрирования».
Перейдите в раздел «Отчеты» > «Доступные обновления» и вы увидите, что модуль Token теперь стал зеленого цвета – это говорит о том, что он использует последнюю версию.
Стоит отметить, что на этой же странице красным цветом Drupal обозначает критические обновления, которые нужно сделать немедленно, а желтым цветом выделены обновления с небольшими улучшениями, которые не являются столь критичными и с такими обновлениями вы можете повременить, но все же советую вам не затягивать.
Так же вы всегда можете проверять наличие обновлений вручную. Для этого, на этой же странице во вкладке «Обновить» нажмите ссылку – «Проверить вручную».
После проверки мы видим, что все модули в актуальном состоянии.
Также проверить наличие обновлений вручную вы сможете и в разделе «Расширения» на вкладке «Обновить».
Как видите, автоматически обновить модуль можно как в разделе «Расширения», так и в разделе «Отчеты» > «Доступные обновления». Так что пользуйтесь более удобным способом для вас.
2 способ – Вручную
Теперь давайте попробуем обновить этот же модуль только вручную.
Чтобы выполнить обновление вручную, для начала вам необходимо скачать сам модуль. Для этого, перейдите в раздел «Отчеты» > «Доступные обновления» и кликните по ссылке – «Скачать».
Начнется загрузка архива с модулем.
После того, как модуль скачан, перейдите в директорию сайта: имя_сайта/modules и разархивируйте в ней архив с заменой всех старых файлов модуля Token.
Чтобы внести обновления в базу данных Drupal, необходимо запустить скрипт обновления, для этого в адресной строке браузера введите: имя_сайта/update.php. Откроется уже знакомая нам страница обновления базы данных. Нажимаем кнопку «Продолжить».
И как уже было описано выше, на последующей странице завершаем внесение обновлений в базу данных Drupal.
Всегда после обновления модуля не забывайте перейти на сайт и проверить, все ли корректно у вас работает.
Пользуйтесь любым из этих двух способов. Лично я предпочитаю автоматический, потому что благодаря ему можно обновлять модули в пару кликов.
onedrupal.com