Installing Drush for working with Drupal 6-8 and Backdrop » History » Revision 49

« Previous | Revision 49/62 (diff) | Next »
Jack Aponte, 11/04/2019 06:46 PM
attempt at clarifying section on when you must install drush as root

Updated over 4 years ago by Jack Aponte

Installing Drush for working with Drupal 6-8 and Backdrop

An important note: we no longer need to install any version of Drush except Drush 8, since that now supports Drupal 6, 7, <8.3 and Backdrop.

Installing and updating Drush 8 for all users

I've followed the "Install a global Drush via Composer" instructions under in the Drush 8 alternative installation documentation.

Since running composer install as root is a security risk, you can use commands like these to install Drush in your home directory first, then move it to a globally-accessible location using sudo:

cd ~
COMPOSER_HOME=$HOME/drush COMPOSER_VENDOR_DIR=$HOME/drush/8 composer require drush/drush:8.3.1
cd ~/drush/8/drush/drush
composer install
cd ~
sudo mv ~/drush /opt/
sudo chown -R root: /opt/drush
sudo ln -s /opt/drush/8/drush/drush/drush /usr/local/bin/drush

If you must run composer install and the other commands above as root, e.g. if that's the only user we have access to on the server, you can do so by changing the COMPOSER_HOME path to /opt/drush and COMPOSER_VENDOR_DIR to /opt/drush/8 and adjusting the other commands above accordingly.

Replace "8.3.1" (last updated in this documentation on 11/4/19) with the tag of the most recent stable 8.x release (see

Use the same commands with a new version number to update Drush as needed.

Install Drush on May First/People Link (MFPL) and other shared hosting environments

Primarily drawn from this MFPL ticket; thanks Ivan!

First, install Composer following these instructions.

Then to install Drush:

echo 'export PATH="$HOME/.composer/vendor/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
cd ~/<>/bin
php composer.phar global require drush/drush:8.2.3
which drush

Note that sometimes cgi-bin is present on MF/PL sites instead of bin.

If using Drush aliases, you may need to specify the new Drush installation in the shared aliases.drushrc.php file or a local aliases file. Here's an example:

$aliases['organization'] = array(
  'remote-host' => '',
  'remote-user' => 'organization',
  'root' => '/home/members/organization/sites/',
  'uri' => '',
  'path-aliases' => array(
    '%drush-script' => '/home/members/organization/sites/',
    '%dump-dir' => '~/drush-backups',
    '%files' => '/home/members/organization/sites/',),

Install and update Drush Backdrop commands

In order for Drush to work with Backdrop, you must install the Drush Backdrop commands within the Drush 8 installation itself.

Assuming that Drush 8 is installed in /opt/drush/8/drush/drush, as specified above:

sudo git clone /opt/drush/8/drush/drush/commands/backdrop

To update Drush Backdrop commands installed like this:

cd /opt/drush/8/drush/drush/commands/backdrop
sudo git pull origin

Updated by Jack Aponte over 4 years ago · 49 revisions

Also available in: PDF HTML TXT

Go to top