Vorgehensweise
-
alte Zope Version stoppen
-
alte Zope Version sichern (z.B. Verzeichnis von /usr/lib/zope in /usr/lib/zope.backup umbenennen)
-
alte ZODB sichern (/var/lib/zope/var/Data.fs)
-
neue Zope Version nach /usr/lib/zope entpacken, dem User und Gruppe www-data zuordnen ($ chown www-data.www-data -R /usr/lib/zope/*
) und �bersetzen ($ python2.1 wo_pcgi.py
)
-
Scripte anpassen
-
ggf. locales erzeugen
-
neue Zope Version starten
Scripte anpassen
/etc/init.d/zope
In dem RC Script m�ssen mehrere Optionen gesetzt werden, damit die neue Version genau so reagiert wie die alte. Dazu die Zeile ZOPEOPTS am Anfang erweitern:
ZOPEOPTS="-w9673 -u www-data -z /usr/lib/zope -L de_DE"
Erkl�rung
-
-w9673
setzt den HTTP Port auf 9673, da 8080 unter Debian f�r einen Web Proxy reserviert ist.
-
-u www-data
setzt www-data als Zope Benutzer
-
-z /usr/lib/zope
setzt das Installationsverzeichnis von Zope, damit Zope ohne Probleme von /usr/sbin/zope-z2 gestartet werden kann
-
(optional) -L de_DE
setzt Locales auf dt. Sprache. dt. Zeichensatz mit Euro Symbol.
-
optional kann noch eine Logdatei erstellt werden. Dann muss Zope aber mit einem '& in
/usr/sbin/zopectl' gestartet werden.:
# If you want debugging info enable the following lines
STUPID_LOG_FILE=/var/log/zope-debug.log
Z_DEBUG_MODE=1
export STUPID_LOG_FILE Z_DEBUG_MODE
/usr/sbin/zopectl
Analog zu apachectl f�r den Apache Webserver wird Zope durch zopectl gestartet. Auch hier sind einige kleine �nderungen von N�ten.
zdaemon_pidfile existiert nicht mehr (siehe z2.py Option -Z), als Workaround einfach Z2.pid nehmen:
#zdaemon_pidfile=$INSTANCE_HOME/var/zProcessManager.pid
zdaemon_pidfile=$INSTANCE_HOME/var/Z2.pid
Falls man Zope mit -D
oder Z_DEBUG_MODE=1
f�r das Login startet, muss man noch daf�r sorgen, dass Zope in den Hintergrund geht. Dazu reicht es, ein &
einzuf�gen.:
start_zdaemon() {
# /usr/sbin/zope-z2 -D $@ \
# >>$zdaemon_logfile 2>>$zdaemon_logfile &
/usr/sbin/zope-z2 $@ &
}
/usr/lib/zope/z2.py
z2.py
war bei mir kein ausf�hrbarer Python Script. Darum muss diese Datei leicht abge�ndert werden. Dazu ganz am Anfang folgende Zeile einf�gen:
#!/usr/bin/env python2.1
und die entsprechenden Dateirechte setzen ($ chmod 750 z2.py
).
Locales verwenden
Man kann locales unter Zope verwenden. Das hat unter anderem den Vorteil, dass ZWiki Sonderzeichen nicht mehr als Gro�buchstaben erkennt. Um Locales zu verwenden, muss man sie zun�chst installieren.:
$ apt-get install locales
Falls sie schon installiert sind oder man mehr locales verwenden will, muss man Debian beibringen, welches locales �bersetzt werden soll. Das geht mit:
$ dpkg-reconfigure locales
Dort de_DE ISO-8859-15
ausw�hlen. Bei der nachfolgenden Frage, welche Sprache Debian Pakete verwenden sollen, kann man entweder C
w�hlen (Standardsprache Englisch ohne locales) oder de_DE
. Mit None
oder Leave alone
hatte ich schon meine Probleme, als lieber C
als nichts w�hlen. Nach dem anschlie�enden OK sollten die locales generiert werden:
Generating locales...
de_DE.ISO-8859-15... done
Generation complete.
Fertig
Zope sollte nun mit einem /etc/init.d/zope start
starten und funktionieren. Nach einem Test kann man die alten Produkte in den Products Folder kopieren. Dies w�re auch ein guter Zeitpunkt, um nach Updates der Produkte zu suchen. :o)
Falls es Probleme gibt, in den Logs nachsehen. Ggf. stimmen die Rechte f�r /var/lib/zope/var und Dateien darin nicht.
Geschrieben von Tiran . Letzte �nderung 01.04.2003 22:10.