Wer gleichzeitig mehrere WordPress-Installationen upgraden möchte, kann dies elegant mit dem Shell-Skript von Alex Günsche erledigen. Voraussetzung dazu ist Shell-Zugriff und root-Rechte für den Server. Wer dies nicht zur Verfügung hat und nur eine einzelne Installation aktuell halten möchte, sollte das InstantUpgrade Plugin von Alex Günsche zu testen.
Das Skript lädt jeweils die aktuellste Version von WordPress herunter, entpackt diese und aktualisiert die angegebenen Verzeichnisse. Um das Skript zu verwenden sollte man allerdings genau wissen was man tut und vorher ein Backup erstellt haben. Ich habe es zudem zuerst an meiner Beta-Installation getestet. Folgende Schritte sind durchzuführen:
# cd /root)# mkdir wpupgrade)wpupdate speichern# chmod +x ./wpupdate)# mkdir languages)/srv/www/vhosts/domain.de/httpdocs/=http://domain.de/
/srv/www/vhosts/domain2.de/httpdocs/=http://domain2.de/# ./wpupdate)Hier das Skript zum Download: wpupdate.
Hinweis: Das Skript funktioniert mit der aktuellen WordPress-Dateistruktur und ich habe es zum Update auf Version 2.2.1 verwendet. Bitte die Lizenzhinweise im Header beachten.
Beim Update der von mir verwalteten Weblogs habe ich einen Fehler beim chown der kopierten Dateien erhalten. Die neue WordPress-Version wird vom Skript mit den Berechtigungen des root-User kopiert. Deshalb müssen am Ende der Besitzer und die Gruppe korrigiert werden. Damit das Skript vollständig auf meinem Server mit einer Linux Suse 10.0 Installation und Plesk 8.2 funktioniert waren dazu folgende Anpassungen notwendig.
In Zeile 67 & 68:
USER=$(ls -l ${DIR}/wp-config.php | cut -f 4 -d ' ')
GROUP=$(ls -l ${DIR}/wp-config.php | cut -f 5 -d ' ')
In Zeile 86:
chown -R ${USER}:${GROUP} ${DIR}/*
Die Anpassungen in Zeile 67 & 68 bewirken, dass der richtige Benutzer und die richtige Gruppe zugeordnet werden. Mit der Anpassung in Zeile 86 wird festgelegt, dass nur Dateien innerhalb des WordPress Installationsverzeichnisses angepasst werden.
Um festzustellen ob tatsächlich der benötigte Benutzer und die richtige Gruppe eingesetzt wird, können folgende Befehle im WordPress-Verzeichnis ausgeführt werden. Dabei wird jeweils der Benutzer und die Gruppe ausgegeben:
# ls -l wp-config.php | cut -f 4 -d ' '
# ls -l wp-config.php | cut -f 5 -d ' '
Vielen Dank an Alex Günsche für den netten live Support bei der Anpassung an meine Bedürfnisse.
7 Responses
Alex
Juli 17th, 2007 at 01:00
1Hey, danke für die ausführliche Würdigung! :-)
Die Lizenz des Skriptes ist übrigens die MIT-Lizenz, eine sehr liberale Lizenz, die praktisch jegliche Verwendung erlaubt, unter den Bedingungen, dass der Copyright-Hinweis erhalten bleibt und dass der Autor nicht für Probleme haftbar gemacht werden kann. (Ein Schelm, der Böses dabei denkt … ;-))
Notiz: Wordpress Update via Skript & Plesk at + mzungu’s weblog +
August 9th, 2007 at 08:01
2[...] mit Plesk funktioniert, mussten jedoch noch ein paar kleine Anpassungen gemacht werden. Ich habe meinem Artikel dazu entsprechend [...]
Notiz: WordPress Plugins Update-Plugin by + mzungu’s weblog +
August 28th, 2007 at 21:44
3[...] ich kürzlich ein Skipt zum automatischen WordPress-Update vorgestellt habe, fehlte nur noch eine einfache Möglichkeit verwendete Plugins zu [...]
WordPress Ticker (11) — Software Guide
September 5th, 2007 at 00:02
4[...] Weber stellt unter WordPress automatisch aktualisieren die Möglichkeit vor, gleichzeit mehrere WordPress-Installationen per Shell-Skript upzugraden. Eine [...]
Stefan
September 5th, 2007 at 12:03
5Hi,
cooler artikel, danke fuer das script.
ich habe es direkt mal auf meiner vps ausprobiert, bekomme aber leider das script nicht aufgerufen.
im root ordner darf ich nichts neues erstellen.
habe daher alles in den httpdocs ordner verschoben und einen ordner update erstellt. darein die txt datei minus der erweiterung sowie eine angepasste version der installations datei.
ich habe auch plesk und unter “setup” habe ich “sh” fuer shell zugriff eingestellt. in der console kann ich das script wpupdate irgendwie aber nicht ausfuehren. hast du noch eine idee?
Cedric Weber
September 6th, 2007 at 11:26
6Hallo Stefan, wenn du ein V-Server hast sollte es dir möglich sein im root Verzeichnis zu schreiben. Natürlich solltest du dazu root-User sein. Das Update als root durchzuführen macht bei mir auch Sinn, da andere User (zumindest per default bei mir) keine Schreibrechte für andere Domain-Verzeichnisse haben.
Wenn dies allerdings nicht der Fall ist sollte es meine Meinung nach Funktionieren. Natürlich musst du dazu das WORKDIR=”/dein/absoluter/pfad/wpupgrade/” richtig setzen. Getestet habe ich es nicht, hoffe es klappt?
Kurz notiert by + mzungu’s weblog +
September 12th, 2007 at 14:23
7[...] WordPress gibt es mal wieder ein Sicherheitsupdate. Das Update via Script für 5 Blogs gleichzeitig ging innerhalb von 2min glatt. Perfekt. Mal sehen ob das mit der [...]
RSS feed for comments on this post · TrackBack URI
Leave a reply
Über Cedric Weber
Ich schreibe seit Mai 2003 zu diversen Themen rund um das Web2.0, über Social Software, Wiki, Weblogs, online Kollaboration, Webserver, Instant Messaging, sowie Linux / Ubuntu. Zwischendurch finden sich Themen aus meinem Alltag - über Glauben und Spiritualität, Fotografie, Musik und vieles andere wieder.
Auf zungu.net | the friendly blogBASE betreibe ich außerdem eine kleine Blogginplattform auf der Basis von WordPress Multiuser. Auf Anfrage erhalten Freunde und Bekannte gerne ein eigenes kostenloses Blog mit individuellem Support.
Zungu ist ein swahili Wort und steht für fremd, eigenartig, sonderbar, verrückt oder außergewöhnlich. In Ostafrika werden weiße Menschen mzungu genannt... (mehr)
Aktuelle Events
Rechtliche Hinweise
Inhalte dieser Seiten sind - soweit nicht anders vermerkt - unter der Creative Commons Lizenz BY-NC-SA veröffentlicht.
Weitere Informationen findest du im Impressum.
Letzte Kommentare
Blogs (diverse Themen)
Enterprise2.0 / Web2.0
Freunde
Linux
Musik / Medien
Soziales / Gemeinde / NGO
Beitragsarchiv
Kategorien
Letzte Artikel
Tag cloud
+ mzungu's weblog + is proudly powered by WordPress - BloggingPro theme by: Design Disease - Aktuelle Feedleser: 180