Обновление ядра Drupal 8 на сервере Linux: пошаговая инструкция

Ранее мы размещали пост об установке Drupal 8 на Ubuntu 16.04. В этом руководстве будет показано, как корректно выполнить обновление минорной версии Drupal 8 (8.x. x) на сервере с операционной системой Linux. Независимо от используемого вами дистрибутива Linux, вы сможете применить этот способ для обновления ядра Drupal 8.

На данный момент не существует автоматического механизма обновления для Drupal 8, в отличие от WordPress. Обновление этой платформы требует ручной работы. Давайте начнем процесс без лишних задержек.

Первый шаг: Создание резервной копии ядра Drupal и базы данных.

Всегда необходимо иметь резервную копию. В операционных системах Unix/Linux утилита командной строки tar позволит создать резервное копирование каталога на сервере.

tar - cpzf drupal8core. tar.gz /path/to/drupal/web/root

Эта команда создаст резервную копию всех файлов в корневой директории вашего сайта на Drupal, сожмет их и сохранит в формате tar-архива. Естественно, необходимо заменить указанный путь на реальный путь к корневому каталогу вашего сайта. Более подробную информацию о команде tar можно найти в документации (man tar).

Читайте также:  Как настроить NTP сервер на CentOS/RHEL 7/6 и Fedora 30/29

Для создания резервной копии базы данных Drupal, достаточно выполнить следующую команду, если используется MySQL или MariaDB.

mysqldump - u root - p drupal-database > drupal-database. sql

Замените drupal-database на реальное название вашей базы данных, которое можно узнать с помощью следующей команды.

mysql - u root - p - e "show databases;"

Второй шаг: Включите режим технического обслуживания на сайте.

Войдите как администратор сайта, который также известен как пользователь 1 в Drupal. Затем перейдите в Управление > Конфигурация > Разработка >Режим технического обслуживания. Проверьте, что этот пункт выбран, и сохраните настройки.

обновление Drupal 8 переводит сайт в режим обслуживания

Удалите файлы и папки Drupal.

С помощью команды cd перейдите в папку, где установлен Drupal 8. После этого удалите папки core и vendor.

rm - r core/ vendor/

Не касайтесь других каталогов. Затем необходимо удалить все оставшиеся файлы в корневом каталоге Drupal 8. В результате на сервере у вас останутся каталоги modules, profiles, sites и themes.

Читайте также:  Сброс пароля root в Linux

Загрузите актуальную версию Drupal 8.

Загрузите последнюю версию ядра Drupal с официального сайта Drupal. org. Сохраните файл в папку, которая находится вне директории установки Drupal. Для загрузки через командную строку вы можете воспользоваться wget, как показано ниже. Возможно, потребуется изменить номер версии.

wget https://ftp. drupal. org/files/projects/drupal-8.1.8.tar.gz

После этого извлеките файл.

tar xvf drupal-8.1.8.tar.gz

В новом каталоге drupal-8.x. x, который будет создан в текущем, выполните переход внутрь него.

cd drupal-8.1.8

Прежде чем перенести файлы и папки в директорию установки Drupal, необходимо удалить каталоги modules, profiles, sites и themes, так как мы не желаем перезаписывать эти четыре директории. В противном случае могут быть утрачены ваши пользовательские модули, темы и прочие настройки.

rm - r modules/ profiles/ sites/ themes/

После этого мы можем перенести все остальные файлы и папки в директорию, где установлен Drupal.

cp - R *.htaccess /path/to/Drupal/web/root/

Обновите свою базу данных в Drupal.

Теперь, когда ядро Drupal было обновлено, необходимо также выполнить обновление базы данных, перейдя по следующему адресу.

Читайте также:  Наиболее эффективно ли взаимодействуют Hedera и сеть HBAR с NFT?

your-domain.com/update.php

Обновление базы данных Drupal 8

Нажмите на кнопку «Далее».

Если вы работаете с Nginx и столкнулись с ошибкой, например, страницей update.php/selection, которая не обнаружена, внесите следующий блок location в конфигурационный файл Nginx и перезапустите сервер.

location ~

  • ^/обновление.php
  • < fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index update.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/update.php; fastcgi_param SCRIPT_NAME /update.php; >

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

    Нет ожидающих обновлений.

    Переход от режима обслуживания к онлайн-формату.

    После завершения обновления базы данных Drupal 8 перейдите в Управление > Отчеты >Отчет о текущем состоянии. Проверьте, что все функционирует корректно.

    Затем перейдите в Управление > Конфигурация > Разработка >Режим обслуживания. Уберите галочку и сохраните изменения в ваших настройках.

    Ваш сайт на Drupal завершил работу в режиме обслуживания, и обновление до Drupal 8 прошло успешно.

    Финальные размышления

    Теперь вы понимаете, почему Drupal не является лучшим выбором для начинающих блогеров или веб-мастеров. Это создает множество сложностей по сравнению с обновлением WordPress, где достаточно нажать одну кнопку, и процесс завершится всего за несколько секунд.

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

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