Drush Installation
am 28.05.2014 - 21:08 Uhr in
Hallo Forum,
ich versuche gerade drush 7.x zu installieren, weil mein Standard-drush (5.4 apt-get install drush) leider mein Drupal nicht erkennt. Den Pfad habe ich /etc/drush/drushrc.php mit /var/www/ordner/ angegeben. Gibt es eine ähnlich verständliche Nachricht wie unter https://wiki.debian.org/drush oder http://www.drupalcenter.de/handbuch/18851.
mit bestem Dank Andy
edit: ich arbeite mit Debian wheezy und einem apache2.22.2 mit php 5.4.4
- Anmelden oder Registrieren um Kommentare zu schreiben

Drush, PHP CLI, Server Repositories und Composer
am 29.05.2014 - 00:07 Uhr
Drush ist primär ein PHP command-line (CLI) Programm. PHP CLI ist meistens bei managed Hosting vorhanden, wenn man auch SSH Zugriff hat, muss aber separat installiert werden unter Linux z.B. unter Debian/Ubuntu mit "apt-get install php5-cgi".
Drupal und Drush haben aber meiner Meinung nach eigentlich nichts in den Linux-Repositories zu suchen. In der Diskussion zum Heise-Artikel "Distributionen patchen Drupal – außer Ubuntu" habe ich da auch schon mal zu geschrieben. Siehe:
Drupal und Drush sind in den Server Repositories nicht sinnvoll aufgehoben und dem darunter liegenden Thread.
Das heißt, Du hast wahrscheinlich auch keine aktuelle Version von Drush 5. Besser Du holst von Github eine aktuelle Version.
Drush lässt sich in Version 5 noch relativ leicht auf verschiedenen Wegen installieren/zum Laufen bringen (auch in managed Hosting Paketen) letztendlich auch einfach durch Aufruf der drush.php per PHP CLI. Wo drush selbst liegt ist relativ egal, hauptsache es ist ausführbar und z.B. als Programm verlinkt in Linux. Wenn das nicht geht kann man sich auch mit Bash Aliasen beheben (geht in der Regel auch in Managed Hosting).
Als erstes sollte überprüft werden, ob Drush auch ohne installiertes Drupal läuft. Da steckt meistens das Problem. Die erwähnte Datei "/etc/drush/drushrc.php" dient nur der globalen Konfiguration von Drush und auf Drupal selbst lässt sich auch mehrere Weg zugreifen. Zunächst mal im (bzw. unterhalb des) Drupal-Root selbst, per Pfadangabe des Roots oder per Alias (@mysite).
Neuere Drush-Versionen nutzen übrigens composer zur Installation und lassen sich auch komplett damit herunter laden und aktualisieren. Für managed Hosting-Situationen aber auch ein wenig um grundsätzlichen Verständnis siehe auch den Thread "Drush bei Host Europe"
Vielen Dank für deine Antwort
am 29.05.2014 - 08:47 Uhr
Vielen Dank für deine Antwort ich hänge jetzt bei dem Schritt 1 der Post Installation fest https://github.com/drush-ops/drush, leider bekomme ich folgende Fehlermeldung:
bash: alias: drush: not found
Ich bilde mir eigentlich ein alle Schritte richtig ausgeführt zu haben.
mfg
Andy
Mh, also ich habe den Spaß
am 31.05.2014 - 09:51 Uhr
Mh,
also ich habe den Spaß jetzt soweit, dass ich drush oder auch dr als aliase verwenden kann, das scheint auch alles zu funktionieren nur die connection zu meinem drupal ordner scheitert. Unter /etc/drush habe ich bereits eine Datei drushrc.php angelegt:
Inhalt:
$options['r'] = '/var/www/meineseite';
Wenn ich nun drush status aufrufe erhalte ich:
dr status
$options['r'] = '/var/www/meine seite/';
PHP executable : /usr/bin/php
PHP configuration : /etc/php5/cli/php.ini
PHP OS : Linux
Drush version : 7.0-dev
Drush temp directory : /tmp
Drush configuration :
Drush alias files :
Was muss ich jetzt noch beachten oder tun?
mit bestem Gruß Andy
Okay, ich habe es jetzt
am 31.05.2014 - 10:10 Uhr
Okay, ich habe es jetzt geschafft (es lag bis dato an einem buchstabendreher), nur stehe ich jetzt vor der nächsten aufgabe. Ich möchte mein system updaten. Wenn ich drush status eingebe, verlangt drush ein datenbankpasswort, das bekommt es und alle infos werden angezeigt:
Drupal version : 7.28
Site URI : http://default
Database driver : pgsql
Database username : postgres
Database name : dbname
Database : Connected
Drupal bootstrap : Successful
Drupal user :
Default theme : bartik
Administration theme : seven
PHP executable : /usr/bin/php
PHP configuration : /etc/php5/cli/php.ini
PHP OS : Linux
Drush version : 7.0-dev
Drush temp directory : /tmp
Drush configuration : /etc/drush/drushrc.php
Drush alias files :
Drupal root : /var/www/meineseite/
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : /tmp
wenn ich jetzt "drush up" laufen lasse, werde ich wieder nach dem DB-Passwort gefragt und gebe drush das selbe Passwort, leider passiert dann nichts ausser das ich permanent das passwort eintippen darf.
Kann ich das irgendwo hinterlegen?
mfg
AndyLicht
hä wieso wirst du nach einem
am 31.05.2014 - 11:01 Uhr
hä wieso wirst du nach einem PW gefragt?
Installiere drush einfach so https://github.com/drush-ops/drush#installupdate---composer
Genau so ist meine aktuelle
am 31.05.2014 - 11:25 Uhr
Genau so ist meine aktuelle Version installiert. Ich habe keine Ahnung was jetzt nicht stimmt.
drushrc.php erstmal nicht benutzen
am 31.05.2014 - 11:57 Uhr
Drush ist sehr sehr flexibel aber ein Advanced Werkezeug, bei dem die Dokumentation stark den Möglichkeiten hinterher hinkt. Auch drush.org ist schon lange nicht mehr aktuell. Viele der Konfigruations-Möglichkeiten können falsch angewendet mehr schaden als nützen. Und solnage man diese nicht versteht, sollte man darauf verzichten, weil man sie auch erstmal nicht braucht.
Die drushrc.php ist so eine advanced Konfiguration. Ich würde erstmal empfehlen diese nicht zu benutzen, vor allem nicht vom Anfänger. Schon der Hinweis auf auf den Pfad zu EINEM Drupal widerspricht dem globalen Character dieser Konfiguration. Drush ist vor allem nützlich, um damit mehr als eine Drupal-Instanz zu verwalten und das auch auf entfernten Rechnern, aber auch das ist eine Advanced-Anwendung.
Wenn drush korrekt installiert ist, funktioniert es auch ohne spezielle Konfigurationsdateien und auch ohne ein existierendes Drupal. Als Anfänger bewegt man sich am besten in das Drupal Verzeichnis und ruft dort "drush status" auf, um mal zu schauen ob dieses eine Drupal richtig läuft. Drush ist vor allem flexibel darin, sich selbst zurecht zu finden, es hat Strategien implementiert,d ie auch Kompatibilität zu Windows und Mac berücksichtigt und "es schaut sich um", ob es sich innerhalb eines Drupal-Systems befindet und versucht dann den "Drupal-Bootstrap" zu laden, quasi das "Drupal-Interne Betriebs-System". Das funktioniert dann sogar, selbst wenn der Apache-Server für den Browser-Zugriff nicht merh funktioniert oder ausgefallen ist.
Die Angabe des Pfades (-r) ist möglich aber ich finde das lästig und benutze es sehr selten. Auch crontab-Befehle werden damit unübersichtlich. Ich lege fast immer Site-Aliase an, aber damit sollte man sich erst beschäftigen, wenn der Betrieb innerhalb der Drupal-Verzeichnisse funktioniert.
Okay, es klappt jetzt ohne
am 31.05.2014 - 12:00 Uhr
Okay, es klappt jetzt ohne das ich irgendeine Konfigurationsdatei benötige. Dennoch muss ich bei jedem Drushaufruf das Datenbankpasswort eingeben, muss die Drupal-Settings.php andere Rechte bekommen?
mfg und besten Dank für eure Hilfe
Andy
p.s. ich habe auf meinem Windowstestrechner Drush laufen und da funktioniert das bis dato prima, jetzt will ich die Vorzüge auch auf meinem vServer nutzen.
Vielleicht dochnochmal, hier meine Ausgabe vom Status-Aufruf:
müsste nicht eigentlich ein Nutzer mit angegeben sein?
Password for user postgres:
Drupal version : 7.28
Site URI : http://default
Database driver : pgsql
Database username : postgres
Database name : meinedatabase
Database : Connected
Drupal bootstrap : Successful
Drupal user :
Default theme : bartik
Administration theme : seven
PHP executable : /usr/bin/php
PHP configuration : /etc/php5/cli/php.ini
PHP OS : Linux
Drush version : 7.0-dev
Drush temp directory : /tmp
Drush configuration :
Drush alias files :
Drupal root : /var/www/meineseite
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : /tmp
Drush-User
am 31.05.2014 - 12:05 Uhr
Mag sein, daß Drush nach dem Datenbank-Passwort fragt, wenn es keinen Zugriff auf die Settings.php hat. Das weiß ich gerade nicht. Der Syste,-Benutzer, der drush benutzt, sollte schon Rechte auf das Drupal-System haben.
Aber was mir gerade auffällt, ist daß Du "postgres" einsetzt und da muss ich passen weil ich leider keine Erfahrung damit habe und das auch nicht reproduzieren kann auf meinen Test-Systemen.
Jup liegt daran
am 31.05.2014 - 12:28 Uhr
Jup liegt daran http://drupal.stackexchange.com/questions/35198/drush-sql-dump-asking-fo... ;-)
Mh, schade. Auf meinem
am 31.05.2014 - 12:30 Uhr
Mh, schade. Auf meinem Windowsrechner läuft auch Postgres, da funzt es tadellos. Es wird wohl noch etwas dauern bis ich mit diesem Linux-Spaß gänzlich zurecht komme.
vielen Dank für eure Hilfe.
Okay, die Mission drush geht
am 31.05.2014 - 19:12 Uhr
Okay, die Mission drush geht weiter. Ich habe jetzt rvm installiert, leider erkennt mein system den alias ruby und gem nicht, liegt das an irgendeiner falschen installation oder muss ich einfach noch alle aliase setzen?
Dabei bin ich wie folgt zu Werke gegangen
https://www.youtube.com/watch?v=AZw8J1zfzZk&list=PLLnpHn493BHH5nnK2dKE_4...
ich verstehe dass nicht auf meinem raspi (ein test-linuxrechner) ging das ohne murren und meines erachtens gehört rvm nicht wirklich zu drush
Drush und ruby? Also
am 31.05.2014 - 23:11 Uhr
Drush und ruby? Also irgendwas läuft da falsch bei Dir. ;-) Drush braucht kein ruby. Wenn ist es ein Drush-command, welches ruby commands verwendet, sicherlich irgendwas wegen SASS oder so, right?
Hi, du hast vollkommen recht.
am 01.06.2014 - 07:55 Uhr
Hi,
du hast vollkommen recht. Auf Drush bin ich bei der Einrichtung des Omega-Themes gestossen. Auf meiner Testinstallation hat alles geklappt, wie in dem Level Ups Kurs aufgezeigt, doch jetzt wo ich das ganze auf meinem Server zum Laufen bringen will stoße ich auf Hindernisse, die ich in meinem Kurzen Linuxleben noch nicht kannte. Ich werde für das SASS Thema ein neuen Thread aufmachen -diesen lasse ich sicherheitshalber noch "auf".
mit bestem Dank
Andy
Drush und Ruby haben zwar
am 02.06.2014 - 22:22 Uhr
Drush und Ruby haben zwar nichts miteinander zu tun, aber mittlerweile nutzen einige Themes drush, um eine SASS 'kompatible' SCSS/CSS Struktur zu generieren.
Themes wie Omega 4 und Aurora eignen sich kaum, ohne Ruby und der Installation verschiedener Terminal Programme via Gem, zum vernüftigen arbeiten mit diesen Themes.
Siehe: https://drupal.org/node/2172619
Weiterhin Problem mit
am 09.06.2014 - 18:11 Uhr
der Passworteingabe bei Drush, obwohl ich eine .pgpass mit localhost:5432:*:www-data:meinpostgrespasswort angelegt habe, wird das Passwort immer wieder abgefragt, kann ich da noch irgendetwas anderes tun ? (chmod ist auf 600 gesetzt). Ich verwende drush 7 dev und debian wheezy.
mfg
Andy