Drush: руководство для начинающих

Что такое Drush?

Drush – это интерфейс оболочки для управления Drupal из командной строки облачного сервера. Этот производительный инструмент позволяет выполнять различные задачи при помощи всего нескольких команд терминала, устраняя необходимость постоянно обновлять страницу.

Данное руководство демонстрирует работу некоторых базовых команд Drush на стандартной установке Drupal. Для его выполнения нужно предварительно установить Drush и Drupal на облачный сервер. Об этом можно прочесть в предыдущем руководстве данной серии.

Примечание: Все приведённые ниже команды следует выполнять в каталоге установки Drupal, который должен находиться в любой точке каталога root.

Для начала перейдите в каталог Drupal:

cd /var/www/[drupal_folder_name]

Базовые команды Drush

Одной из наипростейших команд Drush является:

drush status

Эта команда выведет на экран краткий обзор сайта Drupal (версия, URI, местоположение базы данных, пути к файлам, тема по умолчанию и т.д.). Если после запуска этой команды на экране не появилось данных о сайте, значит, вы находитесь в другом каталоге или Drush не понимает, какой именно сайт Drupal имеется в виду.

Как известно, Drupal требует частой очистки кэша. Drush позволяет очень быстро выполнить это:

drush cc

Команда спросит, какой вид кэша нужно удалить; чтобы сразу очистить кэш полностью, введите:

drush cc all

Проекты Drupal

Попробуйте установить популярный модуль Views; для этого нужно запустить следующую команду:

drush pm-download views

или

drush dl views

Любая из вышеприведенных команд загрузит Views и поместит его в папку sites/all/modules. Вторая команда является сокращённой версией первой. Обратите внимание: многие команды имеют сокращённые версии, что делает работу ещё быстрее. К примеру, уже знакомая команда drush status является сокращением команды drush core-status.

Итак, теперь нужно включить только что установленный модуль Views при помощи следующей команды (полная версия которой pm-enable):

drush en views

Как видите, Drush сразу же сообщает, что для загрузки и включения Views необходим набор Ctools и спрашивает, нужно ли выполнить загрузку этих программ. Выберите yes, после чего Drush загрузит Ctools и уточнит, нужно ли включить Views и Ctools. Просто снова введите yes. Обратите внимание: эта команда устраняет необходимость копировать ссылки.

Чтобы отключить модуль Views, запустите следующую команду (полная версия: pm-disable):

drush dis views

Чтобы деинсталлировать модуль Views, используйте:

drush pm-uninstall views

Эта команда также удалит из БД все принадлежавшие этому модулю таблицы.

Примечание: Чтобы уточнить имя модуля, найдите его на странице модулей.

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

drush pm-uninstall views ctools

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

Чтобы получить краткий обзор проектов на сайте, запустите следующую команду (полная версия: pm-list):

drush pml

Эта команда вернёт список всех проектов, используемых на сайте. если список слишком длинный, используйте аргументы фильтрации. К примеру, чтобы просмотреть все дополнительные проекты, можно запустить эту команду:

drush pml --no-core

Пользователи Drush

На сайте много учётных записей пользователей? Drush способен упростить управление ими.

Чтобы создать нового пользователя, используйте команду:

drush user-create username --mail="email@example.com" --password="password"

Терминал выведет некоторые данные о новом пользователе. Чтобы удалить пользователя, введите команду:

drush user-cancel username

Чтобы изменить пароль текущего (или любого другого) пользователя, выполните команду:

drush user-password admin --password="new_pass"

Обновление Drupal

Drush также упрощает обновление проектов Drupal или самого ядра Drupal.

Модули, темы, ядро, таблицы кодовой базы и базы данных нуждаются в обновлении. Как известно, пользовательский интерфейс позволяет обновит всё необходимое в два шага: сначала загружается кодовая база, а затем запускается скрипт update.php для обновления таблиц БД. Drush также имеет для обновления две команды, но их можно объединить в одну.

Но для начала нужно проверить, есть ли доступные обновления:

drush up -n | grep available

Это сокращённая версия команды pm-update, которая автоматически отвечает «no» на все вопросы программы и выводит только строки, содержащие доступные обновления (что делает вывод понятным и удобочитаемым).

Чтобы обновить всё и сразу (чего делать крайне не рекомендуется), просто запустите:

drush up

Но лучше всё-таки устанавливать обновления по очереди (или же группами модулей, если у вас есть возможность отслеживать ошибки).

Чтобы обновить только модуль Views (и кодовую базу, и БД), запустите:

drush up views

Чтобы обновить кодовую базу и базу данных по отдельности, обновите сначала кодовую базу:

drush upc views

А затем обновите таблицы БД; для этого можно запустить скрипт update.php в браузере или использовать команду:

drush updatedb views

Это запустит скрипт обновления БД.

Обновление ядра Drupal выполняется точно таким же образом; нужно просто запустить команду:

drush up drupal

Заключение

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

Чтобы научиться объявлять собственные команды Drush, читайте следующую статью этой серии.

Tags: ,

Добавить комментарий