Команды drush

Основные команды drush

Команда up бэкапит текущую версию модуля, выкачивает на его место новую, выполняет update.php и очищает кэш. Примеры ниже.

Обновление одного модуля:

# drush up module_name

Обновление нескольких модулей:

# drush up module_name1 module_name2

Обновление ядра:

# drush up drupal

Обновление всех модулей у которых есть новые версии:

# drush up

Обновление модуля до определённой версии:

# drush dl module_name --select
# drush updb

drush - это интерфейс командной строки UNIX для доступа к вашему сайту на Drupal.

Справку о командах и опциях вызова drush можно получить так:

drush help

Если вы знаете команду, то для получения её параметров введите её вслед за help.

drush help up

Настройка и расширения drush

Скопируйте в свою домашнюю директорию шаблон файла настройки drush/examples/example.drushrc.php из предварительно скаченного архива модуля (например, по ftp) в файл .drushrc.php в корень вашего аккаунта.

Чтобы запускать drush под пользователем 1 установите:

// always run as user 1

$options['u'] = 1;

Чтобы видеть пароль БД в выдаче команды status вы можете установить:

// Show database passwords in 'status' and 'sql-conf' commands

$options['show-passwords'] = 1;

Вы можете раскомментировать предлагаемые заготовки и установить другие необходимые вам параметры.

Как ставить расширения drush

1. Создайте в своей домашней директории каталог .drush

cd

mkdir .drush

2. Скачивайте необходимые вам расширения drush

Например, для drush_make команда будет такой:

drush dl drush_make

Основные команды и использование drush

Для работы с drush удобнее сначала перейти в директорию вашего сайта.

cd ~/domains/example.com

Если ваш сайт находится на сервере, где файлы хранятся в директория public_html, её тоже надо указать.

cd ~/domains/example.com/public_html

Теперь можно вводить команды и осуществлять различные операции с сайтом.
Получение информации о сайте и всех проектах модулей или тем

В первую очередь посмотрите состояние вашего сайта командой status (сокращенно st).

drush status

Если в данной директории у вас организован мультисайтинг, то для того, чтобы посмотреть состояние сайта, отличного от сайта по умолчанию default, нужно использовать ключ --uri=http://example.com (сокращенно -l http://example.com).

drush --uri=http://example.org status

или

drush -l http://example.org status

Если вы находитесь в месте, отличном о корневой директории сайта, то указать её можно используя ключ --root= (сокращенно -r ~/domains/example.com).

drush -r ~/domains/example.com status

С опцией --root нужно указывать полный путь.

drush --root=/home/u9999/domains/example.com status

В drush 3.0 можно использовать следующий синтаксис:

drush ~/domains/example.com#default status

drush ~/domains/example.com#example.org status

Получение информации о всех проектах модулей или тем

Для того, чтобы получить информацию о всех ваших модулях и темах нужно ввести команду pm-list (сокращенно sm).

drush sm

Получение информации о проекте модуля или темы

Для того, чтобы получить информацию о конкретных модулях и темах нужно ввести команду pm-info.

drush pm-info drupal
Получение информации о версиях проектов модулей или тем

Для получение информации о версиях модуля используйте команду pm-releases (info устаревшая форма).
Команда используется для того, чтобы решить какую версию модуля устанавливать или обновлять.

Для того, чтобы использовать команду pm-releases должен быть установлен модуль update.
Если он у вас не установлен, то установить его можно следующей командой:

drush en update

Посмотреть версии модуля backup_migrate:

drush pm-releases backup_migrate

Скачивание и установка проектов модулей и тем

Для того, чтобы скачать один модуль, тему или список нужно ввести команду pm-download (сокращенно dl).

drush dl module1 module2 theme1

Например, команда:

drush dl cck zen

загружает текущие рекомендуемые версии модуля cck и темы zen.

Скачиваем dev версию модуля backup_migrate.

drush dl backup_migrate-6.x-2.x-dev

Для того, чтобы скачивать модули в директории, отличные от принятых по умолчанию, используется опция --destination=.

Для того, чтобы установить модули или темы используйте команду pm-enable (сокращенно en).

drush en cck zen

Можно использовать * в конце имени для формирования списка модулей.
Также будут установлены и зависимые модули.

Для того, чтобы выключить модули или темы используйте команду pm-disable (сокращенно dis).

drush dis cck zen

Можно использовать * в конце имени для формирования списка модулей.
Также будут выключены и зависимые модули.
Скачивание дистрибутива drupal

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

drush dl

или

drush dl drupal

Пример установки дистрибутива в директорию вашего сайта.

cd ~/domains/example.com

drush dl drupal

cp -a drupal-6.17/* .

cp -a drupal-6.17/.htaccess .

rm -rf drupal-6.17

drush status

Обновление проектов модулей, тем pm-update (сокращенно up)

Для того, чтобы обновлять проекты должен быть установлен модуль update.
Если он у вас не установлен, то установить его можно следующей командой:

drush en update

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

drush up module1 module2 theme1

Для того, чтобы обновить drupal до последней стабильной версии, нужно ввести команду:

drush up drupal

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

Команда при необходимости сама осуществляет обновление базы данных.
Обновление кода проектов модулей, тем pm-updatecode (сокращенно upc)

Команда обновляет код проекта до последней стабильной версии. База данных не обновляется.

drush upc token

Для того, чтобы обновить базу данных самостоятельно, нужно ввести команду updatedb (сокращенно updb).
Действие команды эквивалентно запуску update.php.

drush updb

Удаление модулей, тем pm-uninstall

drush pm-uninstall module1 module2

Очистка кэша

Для того, чтобы очистить кэш, нужно ввести команду cache-clear (сокращенно cc).

drush cc

Enter a number to choose which cache to clear.

[0] : Cancel

[1] : all

[2] : theme

[3] : menu

[4] : css+js

2

Очистить весь кэш:

drush cc all

Как делать бэкапы с помощью drush

Для начала введите команду drush sql-conf чтобы посмотреть имя вашей базы данных и другие параметры соединения.

drush sql-conf

Дамп базы данных

Бэкап текущей базы данных выполняется командой drush sql-dump.
Имя файла дампа указывается в опции --result-file=.
Если вы создали в своей домашней директории файл .drushrc.php, то вы можете использовать опцию --skip-tables-key=common чтобы не делать дамп некоторых таблиц кэша и других, указанных в настройках.

drush sql-dump --result-file=~/db.example.com.sql --skip-tables-key=common

Дамп в файл архива db.example.com.sql.gz в корне вашей директории.

drush sql-dump --skip-tables-key=common | gzip > ~/db.example.com.sql.gz

Дамп в файл архива db.example.com.sql.bz2 в корне вашей директории.

drush sql-dump --skip-tables-key=common | bzip2 > ~/db.example.com.sql.bz2

Восстановление базы данных из дампа

Для восстановления базы данных из дампа используется команда drush sql-connect для получения параметров доступа к базе данных.

Восстановление базы данных из файла дампа db.example.com.sql в корне вашей директории.

cat ~/db.example.com.sql | `drush sql-connect`

Восстановление базы данных из файла архива дампа db.example.com.sql.gz в корне вашей директории.

gunzip < ~/db.example.com.sql.gz | `drush sql-connect`

Восстановление базы данных из файла архива дампа db.example.com.sql.bz2 в корне вашей директории.

bunzip2 < ~/db.example.com.sql.bz2 | `drush sql-connect`

Восстановление базы данных из файла архива дампа db.example.com.sql.zip в корне вашей директории.

unzip -p ~/db.example.com.sql.zip | `drush sql-connect`

Восстановление базы данных из файла дампа db.example.com.sql в корне вашей директории с использованием интерактивного интерфейса drush к mysql команда sql-cli (сокращенно sqlc).

drush sqlc

source ~/db.example.com.sql

\q

Команда drush sqlc позволяет выполнять и другие запросы на языке SQL к вашей базе данных.
Рекомендации

Создайте в своей домашней директории каталог, где вы будете хранить ваши бэкапы, например, /backup.

cd

mkdir backup

Во всех примерах используйте директорию backup для сохранения дампов:

~/backup/db.example.com.sql.gz

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

~/backup/db.example.com-`date '+%d-%m-%Y-%H-%M-%S'`.sql.gz



<<<Назад            Далее >>>