Drupal + Drush. Часто используемые команды.
Загрузка и установка сайта
Загрузка последней стабильной версии Drupal
drush dl
Предварительный выбор версии
drush dl --select
Установка сайта со стандартным профилем
drush site-install standard --db-url='mysql://[db_user]:[db_pass]@localhost/[db_name]' --site-name=Example
Полезные опции
--account-name=admin
--account-pass=password
--clean-url
--account-mail
Загрузка модуля (в папку sites/all/modules)
drush dl modulename
Активация модуля
drush en modulename -y
Перевод сайта на русский язык
Загружаем и включаем модуль l10n-update
drush dl l10n_update
drush en l10n_update -y
Загружаем расширение drush для работы с языками
drush dl drush_language
Добавляем, включаем и делаем дефолтным русский язык
drush language-add ru
drush language-enable ru
drush language-default ru
Обновляем список переводов с сервера
drush l10n-update-refresh
Переводим сайт на русский язык
drush l10n-update
Обновление сайта и модулей
Обновление всего сайта
drush up
Обновление только ядра
drush up drupal
Обновление указанного модуля
drush up modulename
Обновление всех модулей сайта, без ядра
drush up --no-core
Обновление только тех модулей и ядра, где есть обновление безопасности
drush up --security-only
Бекап сайта
Бекап файлов и базы данных в архив
drush archive-dump --destination=site_backup.tar.gz
Восстановление файлов и базы данных из бекапа
drush archive-restore site_backup.tar.gz
Полезные опции
--exclude=sites/default/files
--no-core
--overwrite
Бекап базы данных
drush sql-dump
Импорт базы данных из бекапа
drush sql-cli
Команды на все случаи
Очистка кэша
drush cc all
Запуск крона
drush cron
Создание нового юзера
drush user-create user1 --mail="mail@mail.ru" --password="pass"
Даём юзеру user1 роль role1
drush user-add-role role1 user1
Смена пароля у user1
drush upwd --password="newpass" user1
Удаление юзера вместе с контентом
drush user-cancel username --delete-content
Включение режима обслуживания (0 - выключение)
drush vset maintenance_mode 1
Синхронизация сайта
Синхронизация базы данных с удаленного сервера на локальный.
drush sql-sync @prod @local
Полезные опции:
--create-db
--tables-list
--skip-tables-key
Синхронизация файлов с удаленного сервера на локальный.
drush rsync @prod @local
Полезные опции:
--exclude-files
@prod @local - это алиасы сайта. Прописываются тут - ~/.drush/aliases.drushrc.php
<?php
$aliases['local'] = array(
'root' => '/path/to/drupal/root',
'uri' => 'yoursite.localhost',
);
$aliases['prod'] = array (
'uri' => 'yoursite.com',
'root' => '/path/to/drupal/root',
'remote-user' => 'ssh-user',
'remote-host' => 'ssh-host',
);
?>