FAQ

Stand: 2013-10-18

pd-admin

Standardumgebung: Installation, Update

Standardumgebung: Programme

Sonstige Programme



Antworten

pd-admin

1. Wie kann pd-admin aktualisiert werden?

Bitte laden Sie die aktuelle Version von pd-admin mit dem Befehl wget www.pd-admin.de/download/pdadmin_v4.tar.gz und entpacken Sie das Archiv mit dem Befehl: tar -xzf pdadmin_v4.tar.gz Wechseln Sie anschließend in das Verzeichnis pdadmin und setzen Sie dort den Befehl ./update.sh auf der Konsole ab.

Wenn Sie die MD5-Version von pd-admin nutzen, ersetzen Sie bei den o.g. Befehlen bitte pdadmin_v4.tar.gz gegen pdadmin_v4-md5.tar.gz

2. Wieso erhalte ich die Fehlermeldung "Can't call method "prepare" on an undefined value" beim Anlegen einer MySQL-Datenbank?

In der Datei /opt/pdadmin/etc/mysql_rootpw.conf ist nicht das richtige root-Passwort zur MySQL-Datenbank eingetragen.

3. Wie kann ich PHP5 aktivieren?

Tragen Sie in die Konfigurationsdatei $php5_enable = 1; ein.

Als Endung für Skripte, die mit dem PHP5-Interpreter ausgeführt werden sollen, benutzen Sie bitte ".php5".

4. Wo finde ich das MySQL-root-Passwort?

Das root-Passwort wird bei der Installation von pd-admin gesetzt und in die Datei /opt/pdadmin/etc/mysql_rootpw.conf geschrieben. Wenn Sie das root-Passwort ändern, tragen Sie das geänderte Passwort bitte in diese Datei ein.

(Bei pd-admin V2 wurde das root-Passwort in der Datei /etc/admin/mysql_rootpw gespeichert.)

5. Warum gibt es für einen neu angelegten Benutzer keine webalizer-Statistik?

Die Statistiken werden einmal täglich in der Nacht erstellt.

6. Wie ermittle ich, welche Version von pd-admin installiert ist?

Setzen Sie auf der Konsole den Befehl /opt/pdadmin/www/customer/customer.cgi --version ab.

Standardumgebung: Installation, Update

1. Was ist die Standardumgebung?

Die Standardumgebung (SE) ist eine Zusammenstellung verschiedener Programme (apache, mysql, proftp, php, perl, ...), die zum Betrieb eines Internet-Servers benötigt werden. Die Standardumgebung läuft auf x86-Prozessoren (Intel, AMD) unter Linux (2.4, 2.6) sowie unter verschiedenen Distributionen (SuSE, Redhat, Debian, Slackware).

Zurzeit ist die Standardumgebung (SE) in zwei Reihen verfügbar:

Reihe Unterschied
0 MySQL 4.0.x
1 MySQL 4.1.x
2 MySQL 5.0.x

Bei einer Neuinstallation wird die Reihe 2 installiert.

2. Was benötigt die Standardumgebung?

Die Standardumgebung benötigt ein GNU/Linux-Betriebssystem mit glibc 2.2/2.3, das auf einer x86-Architektur läuft.

3. Wie wird die Standardumgebung installiert?

Die Installation erfolgt während der Installation von pd-admin.

4. Wo liegen die Dateien der SE?

Sämtliche Dateien der SE liegen unterhalb von /usr/local/pd-admin2

5. Wie ermittle ich die Versionsnummer und die Reihennummer der SE?

Setzen Sie auf der Konsole den Befehl head -1 /usr/local/pd-admin2/UPDATE.INF/data.inf ab.

Seit Version 0.060 finden Sie die Reihe und Version in den Dateien

/usr/local/pd-admin2/UPDATE.INF/SERIES
/usr/local/pd-admin2/UPDATE.INF/VERSION

6. Warum wird mysql nicht ausgeführt?

Die Programme der SE sind nicht in Ihrem Suchpfad (PATH) enthalten. Fügen Sie die Zeile source /usr/local/pd-admin2/SETENV in die Datei /root/.profile ein. Nachdem Sie sich neu angemeldet haben, werden die Programme und man-pages aus der Standardumgebung verwendet.

7. Wo finde ich die Konfigurationsdateien?

ProFTPD
/usr/local/pd-admin2/proftpd.conf

Apache
/usr/local/pd-admin2/conf/httpd.conf

PHP
bis SE 0.027: /usr/local/pd-admin2/conf/php.ini
ab SE 0.028: /usr/local/pd-admin2/lib/php.ini

MySQL
/usr/local/pd-admin2/etc/my.cnf

MySQL Datenbanken
/usr/local/pd-admin2/var/mysql

CourierIMAP
/usr/local/pd-admin2/etc/imapd
/usr/local/pd-admin2/etc/imapd-ssl
/usr/local/pd-admin2/etc/authlib

8. Wo liegen die Logfiles?

Apache AccessLog
/usr/local/pd-admin2/logs/access_log

Apache ErrorLog
/usr/local/pd-admin2/logs/error_log

MySQL ErrorLog
/usr/local/pd-admin2/var/mysql/$servername.err

9. Welche Hotfixes gibt es, wann muss ich diese einspielen, wie lade ich die Hotfixes?

Zurzeit gibt es folgende Hotfixes:

Hotfix ID Grund Anwendungsfall
0001 Korrektur des perl-Pfads für qmail-scanner Nur nach Update von SE < 0.022 auf Version < 0.023
0002 PDPASSWD.pm im perl-Verzeichnis Nur Nach Update von SE ≤ 0.016:
0003 Memory-Limit für smtpd auf 45 MB an Wenn qmail-smtpd wegen zu hohen Speicherverbrauchs vom Betriebssystem beendet wird.
0004 Korrigiert falsche Prüfsummen für cgi-wrapper Unbedingt vor dem Update von SE 0.027
0005 proftpd.conf, clamav, phpMyAdmin Nach Installation von/Update auf SE 0.032 ausführen
0006 nicht anwenden
0007 Nach Installation von/Update auf SE 0.032 ausführen Vor und nach dem Update auf SE > 0.033 von SE > 0.032
0008 Ersetzung qmail-scanner durch simscan Unmittelbar nach einem Update auf SE < 0.036 von SE > 0.036
0009 Apache über Daemontools steuern empfohlen
0010 courier-authd, courier-imap und ggf. courier-imap-ssl über Daemontools steuern optional
in Vorbereitung.
0011 root- und vadmin-Passwort nach altem Schema verschlüsseln. Nur für MySQL-Version 4.1.
0012 Squirrelmail/PHP 4.4.1 nur für SE 0.048
0014 simscanmk/clamav version number parser nur für SE 0.106

Das jeweilige Hotfix können Sie ab Hotfix 0014 auf der Konsole mit wget http://download.pd-admin.de/hotfix-XXXX.sh die älteren Hotfixes können Sie auter wget http://www.pd-admin.de/download/hotfix-XXXX.sh herunterladen (XXXX steht für die Hotfix ID). Sie führen das Hotfix mit sh hotfix-XXXX.sh aus.

10. Wie kann ich die Standardumgebung updaten?

Hinweis: Prüfen Sie vor Beginn des Updatevorgangs, ob unter /usr/local/ genügend freier Plattenplatz bereitsteht. Während des Updatevorgangs wird zeitweise bis zur doppelten Menge des unter /usr/local/pd-admin2 belegten Plattenspeichers verbraucht. Nach Abschluss des Updatevorganges befindet sich das komplette alte Verzeichnis unter dem Namen /usr/local/pd-admin2.<timestamp> weiterhin im Dateisystem.

Update von SE > 0.033 auf SE ≥ 0.033: Update von SE > 0.033 auf SE ≥ 0.034:

wget http://www.pd-admin.de/download/seu3
tar xfz seu3-??????.tar.gz
cd seu3
./se-update.sh

11. Wie verhindere ich bei einem Update der SE das Überschreiben der Courier-IMAP-Konfiguration, in der ich manuell Änderungen vorgenommen habe?

Bis SE 0.044: Sichern Sie die Konfigurationsdatei(en) vor dem Update, führen Sie das Update der SE durch und schreiben Sie anschließend die gesicherte(n) Konfigurationsdatei(en) wieder zurück.

Ab SE 0.045: Ändern Sie die Standardberechtigung 0400 der Dateien /usr/local/pd-admin2/etc/authlib/authdaemonrc und/oder /usr/local/pd-admin2/etc/authlib/authdaemonrc z. B. mit chmod u+w Datei ab, nachdem Sie eine manuelle Änderung vorgenommen haben.

Das Skript configure-ci.pl, das beim Update der SE ab Version 0.045 aufgerufen wird, schreibt nur dann neue Konfigurationsdateien, falls jede Datei entweder nicht existiert oder die Berechtigung 0400 besitzt.

12. Was ist nach einem Update zu prüfen (Dienste; .pdu-Dateien; Konfiguration)

Das Update-Skript fährt nur den Apache-Webserver und die Dienste, die über svscan (/service) kontrolliert werden, vor dem Update herunter und startet diese nach dem Update. Falls Sie andere Dienste aus der Standardumgebung (zum Beispiel imap) nutzen, müssen Sie diese vor dem Update manuell herunterfahren und nach dem Update manuell starten.

Prüfen Sie nach dem Update, ob es zu Versionskonflikten kam. Versionskonflikte können u. a. dann enstehen, wenn Sie eine Datei (z. B. eine Konfigurationsdatei wie php.ini oder my.cnf) verändern und dann ein Update der SE durchführen.

Versionskonflikte lassen sich mit find /usr/local/pd-admin2 -name \*\.pdu-???? einfach finden. Z. B. bedeutet ein Ergebnis php.ini.pdu-0033, dass die Datei php.ini aus der Updateversion der SE 0.033 nicht die bereits vorhandene (und manuell geänderte) php.ini überschrieben hat. In einem solchen Fall können Sie mit
diff /usr/local/pd-admin2/lib/php.ini \
/usr/local/pd-admin2/lib/php.ini.pdu-0033

prüfen, welche Unterschiede zwischen den Dateien bestehen.

Im Verzeichnis /usr/local/pd-admin2/CONFIGURE finden Sie ab SE 0.032 folgende ausführbare Skripte:

Name Zweck überschreibt
configure-ci.pl Courier IMAP konfigurieren etc/authmysqlrc
ab SE 0.038:
etc/authlib/authmysqlrc
etc/authlib/authdaemonrc
configure-cl.sh clamav konfigurieren share/clamav/{daily,main}.cvd
configure-pf.pl proftpd konfigurieren etc/proftpd.conf
configure-pma.pl phpMyAdmin konfigurieren htdocs/phpMyAdmin/config.inc.php
configure-sc.sh simscan konfigurieren /etc/{tcp.smtp,tcp.smtp.cdb} /var/qmail/simcontrol/simcontrol
configure-sm.sh squirrelmail konfigurieren htdocs/squirrelmail/config/config.php

Standardumgebung: Programme

1. Wie wird der Apache-Webserver gestoppt/gestartet?

Nach Umstellung auf Steuerung durch die Daemontools (Hotfix 9):
stoppen:
svc -d /service/apache
starten:
svc -u /service/apache

bisher:
stoppen:
/usr/local/pd-admin2/bin/apachectl stop
starten:
/usr/local/pd-admin2/bin/apachectl start

2. Wie konfiguriere ich phpMyAdmin neu? [ab SE 0.032]

/usr/local/pd-admin2/CONFIGURE/configure-pma.pl

3. Wie konfiguriere ich Courier IMAP? [ab SE 0.032]

/usr/local/pd-admin2/CONFIGURE/configure-ci.pl

4. Wie starte ich Courier IMAP?

Führen Sie bitte nach einem Update auf SE 0.038 das Skript /usr/local/pd-admin2/CONFIGURE/configure-ci.pl erneut aus, da der Dateipfad für die Konfigurationsdateien geändert wurde.

Nach Umstellung auf Steuerung durch Daemontools:

Die Daemontools starten automatisch den courier-authd und courier-imapd. Falls IMAP über SSL betrieben werden soll, benötigen Sie ein Zertifikat. Speichern Sie dieses Zertifikat unter /usr/local/pd-admin2/share/imapd.pem Anschließend können Sie alternativ oder zusätzlich den imap-Daemon für den SSL-Zugriff starten. Setzen Sie hierzu das x-Bit auf den entsprechenden run-Skripten:
chmod +x /service/courier-imap-ssl/log/run
chmod +x /service/courier-imap-ssl/run

bisher:
Starten Sie den imap-Daemon: /usr/local/pd-admin2/libexec/imapd.rc start

Ab SE 0.038 müssen Sie zusätzlich einen separaten Anmeldeserver starten: /usr/local/pd-admin2/sbin/authdaemond start

Falls der Daemon nach einem Neustart des System automatisch gestartet werden soll, legen Sie (hier: unter SuSE 7.3) folgende Links an:
ln -s /usr/local/pd-admin2/libexec/imapd.rc /etc/rc.d/rc3.d/S20imapd
ln -s /usr/local/pd-admin2/libexec/imapd.rc /etc/rc.d/rc3.d/K20imapd

und ab SE 0.038 zusätzlich für den Anmeldeserver:
ln -s /usr/local/pd-admin2/sbin/authdaemond /etc/rc.d/rc3.d/S20authd
ln -s /usr/local/pd-admin2/sbin/authdaemond /etc/rc.d/rc3.d/K20authd

Falls IMAP über SSL betrieben werden soll, benötigen Sie ein Zertifikat. Speichern Sie dieses Zertifikat unter /usr/local/pd-admin2/share/imapd.pem

Anschließend können Sie alternativ oder zusätzlich den imap-Daemon für den SSL-Zugriff starten: /usr/local/pd-admin2/libexec/imapd-ssl.rc start

5. resource limits bei cgiwrap

Seit SE 0.027 beschränkt cgiwrap die Nutzerressourcen wie folgt:

Ressource Voreinstellung Umgebungsvariable
Anzahl Prozesse 30 RLIMIT_NPROC
CPU-Zeit/s 10 RLIMIT_CPU
Größe des Adressraums/B 33.554.432 RLIMIT_AS
Anzahl öffenbarer Dateien*) 128 RLIMIT_NOFILE

*) ab SE 0.036

Davon abweichende Einstellungen können Sie für jeden virtuellen Host über die SetEnv-Direktive einstellen: SetEnv RLIMIT_{NPROC|CPU|AS|NOFILE} Wert

6. Wie konfiguriere ich Squirrelmail?

Konfigurieren und starten Sie zunächst Courier IMAP. Anschließend führen Sie das Script configure-sm.sh aus.

Sonstige Programme

1. Welche Dienste werden von den daemontools überwacht?

Die überwachten Dienste finden Sie im Verzeichnis /service.

2. Wie kann ich Dienste stoppen/starten?

Dienste werden mit
svc -d /service/X
gestoppt und mit
svc -u /service/X
gestartet. X steht für den jeweiligen Dienst. Bitte beachten Sie, dass u. U. nicht alle Prozesse beendet werden. Untersuchen Sie daher nach dem Stoppen z. B. mit pstree, ob der jeweilige Dienst tatsächlich beendet wurde.

MySQL stoppen Sie mit:
svc -d /service/mysqld
/usr/local/pd-admin2/bin/mysqladmin \
-p`cat /opt/pdadmin/etc/mysql_rootpw.conf` shutdown
qmail-smtpd stoppen Sie mit:
svc -d /service/qmail-smtpd
killall tcpserver

3. Wie kann ich alle Dienste zusammen stoppen?

Editieren Sie die Datei /etc/inittab. Lokalisieren Sie die Zeile
SV:123456:respawn:/command/svscanboot
und kommentieren Sie diese aus:
#SV:123456:respawn:/command/svscanboot

Speichern Sie die Datei und senden Sie dem init-Prozess das HUP-Signal:
kill -1 1
Zum Starten entfernen Sie das Kommentarzeichen und senden das Signal erneut.