Deutsche Zope User Group
Gast 1 Benutzer online
DZUG-News

Startup Scripte von Debian f�r Zope 2.6x anpassen

Die Startup Scripte von Debian f�r Zope m�ssen leicht abge�ndert werden, damit man sie f�r eine selbst installierte Version von Zope 2.6x verwenden kann.

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.