Vor dem Upgrade solltest Du immer das Changelog lesen, um zu sehen, ob sich etwas Wichtiges geändert hat. Um herauszufinden, welche Version benutzt wurde, schau in die Quellen einer HTML-Seite, die mit DokuWiki erstellt wurde - dort sollte etwas stehen wie <meta name=„generator“ content=„DokuWiki 2005-02-06“ /> 1).
Der einfachste Weg zum Upgrade führt über folgende Schritte:
cp -a /pfad/zum/wiki/ /pfad/zum/wikibackup
cd ~ wget http://.../dokuwiki-xxxx-xx-xx.tgz
dokuwiki-xxxx-xx-xx:tar -xzvf dokuwiki-xxxx-xx-xx.tgz
'cp' -rf dokuwiki-xxxx-xx-xx/{*,.??*} /pfad/zum/wiki/
cd /pfad/zum/wiki/ wget http://.../dokuwiki-xxxx-xx-xx.tgz
tar -xzvf dokuwiki-xxxx-xx-xx.tgz --strip-components=1
rm dokuwiki-xxxx-xx-xx.tgz
data/conf/local.php (z.B. durch Neuspeicherung der Konfiguration): touch /pfad/zum/wiki/conf/local.php
Diese Schritte sind sicher, wenn Änderungen in der Konfiguration nur über die lokalen Konfigurationsdateien erfolgt sind wie conf/local.php anstatt in der conf/dokuwiki.php. Die lokalen Dateien werden nicht ersetzt. Wenn nur der Konfigurationsmanager benutzt wurde, sind alle Änderungen nur in der local.php gespeichert. Alle Benutzerdaten und ACL werden nicht überschrieben, da die DokuWiki-Installation nur Beispieldateien mitbringt (mit der Dateiendung .dist)
Hier die Liste von Dateien, die seit den letzten Releases entfernt wurden. Überprüfe, ob die Dateien nach dem Updaten noch vorhanden sind. Entferne Sie, falls das zutrifft.
# removed in 2010-11-07 inc/lang/ar/subscribermail.txt inc/lang/az/subscribermail.txt inc/lang/bg/subscribermail.txt inc/lang/ca/subscribermail.txt inc/lang/ca-valencia/subscribermail.txt inc/lang/cs/subscribermail.txt inc/lang/da/subscribermail.txt inc/lang/de-informal/subscribermail.txt inc/lang/el/subscribermail.txt inc/lang/eo/subscribermail.txt inc/lang/es/subscribermail.txt inc/lang/et/subscribermail.txt inc/lang/eu/subscribermail.txt inc/lang/fa/subscribermail.txt inc/lang/fi/subscribermail.txt inc/lang/fo/subscribermail.txt inc/lang/fr/subscribermail.txt inc/lang/gl/subscribermail.txt inc/lang/he/subscribermail.txt inc/lang/hr/subscribermail.txt inc/lang/hu/subscribermail.txt inc/lang/id/subscribermail.txt inc/lang/is/subscribermail.txt inc/lang/it/subscribermail.txt inc/lang/ja/subscribermail.txt inc/lang/ko/subscribermail.txt inc/lang/ku/subscribermail.txt inc/lang/lt/subscribermail.txt inc/lang/lv/subscribermail.txt inc/lang/mr/subscribermail.txt inc/lang/ne/subscribermail.txt inc/lang/nl/subscribermail.txt inc/lang/no/subscribermail.txt inc/lang/pl/subscribermail.txt inc/lang/pt-br/subscribermail.txt inc/lang/pt/subscribermail.txt inc/lang/ro/subscribermail.txt inc/lang/ru/subscribermail.txt inc/lang/sk/subscribermail.txt inc/lang/sr/subscribermail.txt inc/lang/sv/subscribermail.txt inc/lang/th/subscribermail.txt inc/lang/tr/subscribermail.txt inc/lang/uk/subscribermail.txt inc/lang/zh/subscribermail.txt inc/lang/zh-tw/subscribermail.txt # removed in rc2010-10-07 conf/msg inc/lang/bg/wordblock.txt inc/lang/ca-valencia/wordblock.txt inc/lang/ca/wordblock.txt inc/lang/cs/wordblock.txt inc/lang/da/wordblock.txt inc/lang/de-informal/wordblock.txt inc/lang/de/subscribermail.txt inc/lang/de/wordblock.txt inc/lang/el/wordblock.txt inc/lang/en/subscribermail.txt inc/lang/en/wordblock.txt inc/lang/eo/wordblock.txt inc/lang/es/wordblock.txt inc/lang/et/wordblock.txt inc/lang/eu/wordblock.txt inc/lang/fa/wordblock.txt inc/lang/fi/wordblock.txt inc/lang/fo/wordblock.txt inc/lang/fr/wordblock.txt inc/lang/he/wordblock.txt inc/lang/hr/wordblock.txt inc/lang/hu/wordblock.txt inc/lang/id/wordblock.txt inc/lang/it/wordblock.txt inc/lang/ja/wordblock.txt inc/lang/ko/wordblock.txt inc/lang/ku/wordblock.txt inc/lang/lt/wordblock.txt inc/lang/lv/wordblock.txt inc/lang/mg/wordblock.txt inc/lang/mr/wordblock.txt inc/lang/nl/wordblock.txt inc/lang/no/wordblock.txt inc/lang/pl/wordblock.txt inc/lang/pt-br/wordblock.txt inc/lang/pt/wordblock.txt inc/lang/ro/wordblock.txt inc/lang/sk/wordblock.txt inc/lang/sl/wordblock.txt inc/lang/sr/wordblock.txt inc/lang/sv/wordblock.txt inc/lang/th/wordblock.txt inc/lang/tr/wordblock.txt inc/lang/uk/wordblock.txt inc/lang/vi/wordblock.txt inc/lang/zh-tw/wordblock.txt inc/lang/zh/wordblock.txt lib/scripts/pngbehavior.htc # removed in rc2009-12-02 inc/lang/ar/wordblock.txt inc/lang/ca-va/ lib/plugins/acl/lang/ca-va/ lib/plugins/config/lang/ca-va/ lib/plugins/plugin/lang/ca-va/ lib/plugins/popularity/lang/ca-va/ lib/plugins/revert/lang/ca-va/ lib/plugins/usermanager/lang/ca-va/ # removed in rc2009-01-30 lib/plugins/upgradeplugindirectory lib/plugins/upgradeplugindirectory/action.php # removed in rc2009-01-26 inc/auth/punbb.class.php inc/lang/ko/edit.txt_bak inc/lang/ko/lang.php_bak inc/lang/ku/admin_acl.txt inc/lang/mg/admin_acl.txt lib/plugins/importoldchangelog lib/plugins/importoldchangelog/action.php lib/plugins/importoldindex lib/plugins/importoldindex/action.php lib/plugins/usermanager/images/no_user_edit.png lib/plugins/usermanager/images/user_edit.png lib/tpl/default/UWEB.css # removed in rc2008-03-31 inc/aspell.php inc/geshi/css-gen.cfg inc/lang/fr/admin_acl.txt lib/exe/spellcheck.php lib/images/toolbar/spellcheck.png lib/images/toolbar/spellnoerr.png lib/images/toolbar/spellstop.png lib/images/toolbar/spellwait.gif lib/plugins/acl/lang/ar/intro.txt lib/plugins/acl/lang/bg/intro.txt lib/plugins/acl/lang/ca/intro.txt lib/plugins/acl/lang/cs/intro.txt lib/plugins/acl/lang/da/intro.txt lib/plugins/acl/lang/de/intro.txt lib/plugins/acl/lang/el/intro.txt lib/plugins/acl/lang/en/intro.txt lib/plugins/acl/lang/es/intro.txt lib/plugins/acl/lang/et/intro.txt lib/plugins/acl/lang/eu/intro.txt lib/plugins/acl/lang/fi/intro.txt lib/plugins/acl/lang/fr/intro.txt lib/plugins/acl/lang/gl/intro.txt lib/plugins/acl/lang/he/intro.txt lib/plugins/acl/lang/id/intro.txt lib/plugins/acl/lang/it/intro.txt lib/plugins/acl/lang/ja/intro.txt lib/plugins/acl/lang/ko/intro.txt lib/plugins/acl/lang/lt/intro.txt lib/plugins/acl/lang/lv/intro.txt lib/plugins/acl/lang/nl/intro.txt lib/plugins/acl/lang/no/intro.txt lib/plugins/acl/lang/pl/intro.txt lib/plugins/acl/lang/pt/intro.txt lib/plugins/acl/lang/ru/intro.txt lib/plugins/acl/lang/sk/intro.txt lib/plugins/acl/lang/sr/intro.txt lib/plugins/acl/lang/sv/intro.txt lib/plugins/acl/lang/tr/intro.txt lib/plugins/acl/lang/uk/intro.txt lib/plugins/acl/lang/vi/intro.txt lib/plugins/acl/lang/zh/intro.txt lib/plugins/acl/lang/zh-tw/intro.txt lib/scripts/spellcheck.js lib/styles/spellcheck.css # removed in 2007-06-26 inc/parser/wiki.php lib/images/interwiki/bug.gif lib/plugins/base.php lib/plugins/plugin/inc lib/plugins/plugin/inc/tarlib.class.php lib/plugins/plugin/inc/zip.lib.php lib/scripts/domLib.js lib/scripts/domTT.js # removed in 2006-11-06 inc/admin_acl.php inc/lang/lt/stopwords.txt inc/magpie inc/magpie/rss_cache.inc inc/magpie/rss_fetch.inc inc/magpie/rss_parse.inc inc/magpie/rss_utils.inc lib/exe/media.php lib/tpl/default/mediaedit.php lib/tpl/default/media.php lib/tpl/default/mediaref.php # removed in 2006-03-09 data/pages/wiki/playground.txt inc/auth/ldap.php inc/auth/mysql.php inc/auth/pgsql.php inc/auth/plain.php inc/lang/ca/admin_acl.txt inc/lang/cs/admin_acl.txt inc/lang/da/admin_acl.txt inc/lang/de/admin_acl.txt inc/lang/en/admin_acl.txt inc/lang/et/admin_acl.txt inc/lang/eu/admin_acl.txt inc/lang/fr/admin_acl.txt inc/lang/it/admin_acl.txt inc/lang/ja/admin_acl.txt inc/lang/lt/admin_acl.txt inc/lang/lv/admin_acl.txt inc/lang/nl/admin_acl.txt inc/lang/no/admin_acl.txt inc/lang/pl/admin_acl.txt inc/lang/pt/admin_acl.txt inc/lang/vi/admin_acl.txt inc/lang/zh-tw/admin_acl.txt inc/parser/spamcheck.php lib/images/favicon.ico lib/images/thumbup.gif lib/images/toolbar/code.png lib/images/toolbar/empty.png lib/images/toolbar/extlink.png lib/images/toolbar/fonth1.png lib/images/toolbar/fonth2.png lib/images/toolbar/fonth3.png lib/images/toolbar/fonth4.png lib/images/toolbar/fonth5.png lib/images/toolbar/list.png lib/images/toolbar/list_ul.png lib/images/toolbar/rule.png lib/tpl/default/images/interwiki.png
Wenn du Shellzugriff auf deinen Webserver hast, kopiere den oberen Text und speichere ihn in eine Datei auf deinem Webserver. Anschließend führe die folgenden befehle an der Shell aus. In den Befehlen unten habe ich die Datei der Liste oben /tmp/removeold.txt genannt.
Dateien löschen:
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -f
Wenn du den Scripten nicht vertraust, was geschieht, ersetze „rm -f“ mit „ls -la“.
Jetzt die Verzeichnisse, die in der Datei angegeben sind, löschen:
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -fd
Auf manchen Systemen funktioniert „rm -d“ für das löschen von Verzeichnissen nicht. In diesem Fall musst du recursiv löschen (Überprüfe in diesem Falle genau, ob zu viel gelöscht wird!):
grep -Ev "^($|#)" /tmp/removeold.txt | xargs -n 1 rm -fr
Bist du dir nicht sicher, lösche lieber von Hand!
DokuWiki-Version rc2007-05-24 erstellt unterhalb des data/-Verzeichnisses ein neues Verzeichnis index/. Nach dem Upgrade musst Du dieses Verzeichnis manuell erstellen und dem Webserver Schreibzugriffe darauf erteilen, andernfalls wird der Installationsvorgang über das fehlende Verzeichnis meckern und Du kannst Dein Wiki nicht aufrufen. — Michael Klier 2007-05-29 14:47
Wenn Du von einer sehr alten Version aktualisierst, musst Du eventuell einige Verzeichnisstrukturen anpassen. Hier ist eine Liste, die Dir dabei helfen kann (alles aus Sicht des DokuWiki-Hauptverzeichnisses):
changes.log → data/changes.logdata/ → data/pages/attic/ → data/attic/media/ → data/media/Wenn Du von einer älteren Version als 2005-02-06 aktualisierst, musst du nach der Aktualisierung Deine Daten in UTF8 konvertieren.
Hier sind ein paar andere Möglichkeiten, ein Update der Dokuwiki durchzuführen: