Debian Upgrade · 5 min read · Nov 06, 2025

Upgrade von Debian 6 Squeeze mit ISPConfig und Courier/Postfix auf Debian 7 Wheezy

Dieses How-To wurde von dem Howtoforge-Benutzer @manarak aus den folgenden zwei Quellen zusammengestellt und mit zusätzlichen Korrekturen ergänzt.

  • Falko: Wie man Debian Squeeze auf Wheezy aktualisiert
  • Jeppe: Upgrade von Debian 6 Squeeze auf Debian 7 Wheezy mit ISPConfig

Auch danke an Till für die Hilfe mit dem Problem in der suphp.conf.

Dieses How-To geht davon aus, dass Ihr Server läuft:

  • Debian 6 mit Courier/Postfix
  • ISPconfig

zumindest, das lief bei mir.

Teil Eins: Debian aktualisieren

Überprüfen Sie, ob Ihre /etc/apt/sources.list ziemlich standardmäßig aussieht. Meine sieht so aus:

deb http://ftp.no.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.no.debian.org/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
#squeeze-updates, früher bekannt als ‘volatile’
deb http://ftp.no.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.no.debian.org/debian/ squeeze-updates main contrib non-free

Als nächstes führen Sie das aktuelle Upgrade aus, um sicherzustellen, dass Squeeze vollständig auf dem neuesten Stand ist:

apt-get update
apt-get upgrade
apt-get dist-upgrade

Jetzt überprüfen wir, ob keine Pakete zurückgehalten werden. Diese müssen nichts zurückgeben:

dpkg -–audit
dpkg -–get-selections | grep hold

Führen Sie zuletzt aptitude aus, um zu überprüfen, ob Pakete auf die Installation oder Entfernung warten:

aptitude

Drücken Sie g, um die Liste anzuzeigen und fortzufahren, um diese zu beheben. Die Liste sollte sauber sein, damit keine Pakete installiert, entfernt oder aktualisiert werden. Wenn Pakete angezeigt werden, gehen Sie im Menü “Aktionen” und wählen Sie den ersten Punkt “Pakete installieren/entfernen”. Drücken Sie Q, um zu beenden.

Jetzt bearbeiten Sie Ihre /etc/apt/sources.list und aktualisieren Sie die Repositories für Wheezy. Meine sieht so aus:

deb http://ftp.no.debian.org/debian wheezy main contrib non-free
deb-src http://ftp.no.debian.org/debian wheezy main contrib non-free
deb http://ftp.no.debian.org/debian wheezy-updates main contrib non-free
deb http://security.debian.org/ wheezy/updates main contrib non-free

Führen Sie die Befehle zum Aktualisieren Ihres Systems mit Wheezy-Paketen aus:

apt-get update

(Das System beschwert sich über fehlende öffentliche Schlüssel… kein Problem)

apt-get upgrade

(Das System zeigt einige Textwände, drücken Sie Q, um zu beenden)

(Behalten Sie die installierte Crontab)

(Installieren Sie die Version des Paketbetreuers von rkhunter config)

(Behalten Sie meine Version der awstats-Konfiguration)

(Behalten Sie meine suphp-Konfiguration)

(Nehmen Sie die Version des Pakets von phpmyadmin apache.conf)

apt-get dist-upgrade

(Installieren Sie die Version des Pakets von Rcs)

(Installieren Sie die Version des Pakets von my.cnf)

(Ändern Sie das MySQL-Passwort nicht)

…usw… Ich denke, das waren alle wichtigen Entscheidungen.

Ich wählte die Standardantwort auf alle anderen Fragen.

Wenn alles erledigt ist, führen Sie ein

reboot.

Das Upgrade auf Wheezy ist jetzt abgeschlossen.

Teil Zwei: ISPConfig aktualisieren

Melden Sie sich wieder auf Ihrem Server an und stellen Sie sicher, dass wir root sind:

su -

Wir müssen sicherstellen, dass Apache alle Wheezy-Pakete hat, die ISPConfig benötigt:

apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached

Danach führen Sie ein autoremove aus, um aufzuräumen:

apt-get autoremove

Gehen Sie in das /tmp-Verzeichnis, laden Sie das ISPConfig-Archiv herunter, extrahieren Sie es und führen Sie update.php aus, um sicherzustellen, dass ISPConfig ordnungsgemäß für Wheezy eingerichtet ist. Standardantwort auf alle Fragen. Der wichtigste Teil ist, die Dienste neu zu konfigurieren:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
php –q update.php

ISPConfig sollte jetzt ordnungsgemäß eingerichtet sein. Führen Sie ein

reboot.

Teil Drei: Korrekturen

mod_security

Wenn Sie mod_security ausführen (das sollten Sie wirklich), benötigen Sie dies, damit phpMyAdmin funktioniert:

in /etc/phpmyadmin/apache.conf hinzufügen


   SecRuleEngine Off

Fehler: Syntaxfehler, proxy_html.load fehlgeschlagen, configtest fehlgeschlagen…

Nach der Installation und Aktivierung von proxy_html (libapache2-mod-proxy-html) auf einer frischen 12.04-Serverinstallation erhalten wir den folgenden Fehler:

apache2: Syntaxfehler in Zeile 210 von /etc/apache2/apache2.conf: Syntaxfehler in Zeile 1 von /etc/apache2/mods-enabled/proxy_html.load: Kann /usr/lib/libxml2.so.2 nicht in den Server laden: /usr/lib/libxml2.so.2: kann die gemeinsame Objektdatei nicht öffnen: Datei oder Verzeichnis nicht gefunden
Aktion 'configtest' fehlgeschlagen.
Das Apache-Fehlerprotokoll kann weitere Informationen enthalten.

Erklärung: libxml2 ist installiert, aber da auf der amd64-Architektur die libxml2-Datei in: /usr/lib/x86_64-linux-gnu/libxml2.so.2 ist.

Die Lösung besteht darin, in /etc/apache2/mods-available/proxy_html.load

LoadFile /usr/lib/libxml2.so.2

zu ändern in:

LoadFile /usr/lib/x86_64-linux-gnu/libxml2.so.2

ODER (meiner Meinung nach einfacher und wahrscheinlich upgrade-resistenter):

navigieren Sie zu /usr/lib und führen Sie aus

ln -s /usr/lib/x86_64-linux-gnu/libxml2.so.2 libxml2.so.2

Quelle: https://bugs.launchpad.net/ubuntu/+source/mod-proxy-html/+bug/964397

Fehler: dpkg: Warnungen beim Ausführen von Befehlen mit sudo:

dpkg: Warnung: ‘ldconfig’ nicht im PATH gefunden oder nicht ausführbar
dpkg: Warnung: ‘start-stop-daemon’ nicht im PATH gefunden oder nicht ausführbar
dpkg: Fehler: 2 erwartete Programme nicht im PATH gefunden oder nicht ausführbar
Hinweis: Der PATH von root sollte normalerweise /usr/local/sbin, /usr/sbin und /sbin enthalten
E: Unterprozess /usr/bin/dpkg gab einen Fehlercode (2) zurück

Bearbeiten Sie /etc/sudoers als root und fügen Sie diese Zeile nach Defaults env_reset ein:

Defaults secure_path=“/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin”

Quelle: http://blog.coffeebeans.at/?p=380

Fehler: PHP-Warnungen beim Starten von Apache

Beim Versuch, Apache zu starten, kam dies:

PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20100525/suhosin.so’ - /usr/lib/php5/20100525/suhosin.so: kann die gemeinsame Objektdatei nicht öffnen: Datei oder Verzeichnis nicht gefunden in Unknown on line 0

Die Lösung besteht darin, das suhosin-Paket zu entfernen.

apt-get purge php5-suhosin

Quelle: http://blog.tordeu.com/?p=417

Fehler: Veraltete Kommentarzeichen lassen Protokolle anschwellen

Das ISPConfig-Cronprotokoll zeigte dies bei jedem Cronlauf, jede Minute:

PHP Deprecated: Kommentare, die mit ‘#’ beginnen, sind veraltet in /etc/php5/cli/conf.d/ming.ini in Zeile 1 in Unknown on line 0

Lösung: Führen Sie diesen Befehl aus, um Kommentare in allen .ini-Dateien zu finden und # durch ; zu ersetzen:

find /etc/php5/cli/conf.d/ -name “*.ini” -exec sed -i -re ‘s/^(\s)#(.)/
1;
2/g’ {} \;

oder

find /etc/php5/ -name “*.ini” -exec sed -i -re ‘s/^(\\s)#(.)/
1;
2/g’ {} \;

Quelle: http://stackoverflow.com/questions/14074101/getting-comments-starting-with-are-deprecated-message-via-cli

Fehler: Saslauthd schlägt periodisch fehl und Benutzer können sich nicht in das Postfach einloggen oder E-Mails senden.

Ich habe keine Ahnung, ob die folgende Lösung tatsächlich etwas behebt, das Problem scheint komplex zu sein und scheint einen Fehler zu beinhalten.

Das habe ich versucht, um das Problem zu lösen, saslauthd schlägt jetzt immer noch fehl, aber viel viel seltener.

Wenn Sie es versuchen möchten: Ändern Sie in /etc/default/saslauthd die Optionen, sodass sie so aussehen:

OPTIONS="-n 0 -c -m /var/spool/postfix/var/run/saslauthd -r"

Quellen und Diskussionen zu diesem Problem:

Fehler: Nach dem Upgrade möchte phpMyAdmin Sie nicht einloggen, sondern bietet an, die index.php-Datei herunterzuladen

In /etc/apache2/mods-available/suphp.conf kommentieren Sie den

Abschnitt aus und fügen Sie die Zeile hinzu

AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml

ansonsten werden alle PHP-Dateien von SuPHP ausgeführt.

(Danke Till)

Fehler: Protokolldateien zeigen SASL-Authentifizierungsfehler

Nach dem Upgrade kann dies in den Protokollen angezeigt werden:

...  SASL PLAIN-Authentifizierung fehlgeschlagen: kein Mechanismus verfügbar

Lösung: Bearbeiten Sie /etc/postfix/sasl/smtpd.conf und ersetzen Sie

auxprop_plugin: mysql

mit

auxprop_plugin: sql
sql_engine: mysql

und

%u

muss ersetzt werden durch

%u@%r

Quelle: Danke an den anonymen Benutzer

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.