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-freeAls nächstes führen Sie das aktuelle Upgrade aus, um sicherzustellen, dass Squeeze vollständig auf dem neuesten Stand ist:
apt-get updateapt-get upgradeapt-get dist-upgradeJetzt überprüfen wir, ob keine Pakete zurückgehalten werden. Diese müssen nichts zurückgeben:
dpkg -–auditdpkg -–get-selections | grep holdFühren Sie zuletzt aptitude aus, um zu überprüfen, ob Pakete auf die Installation oder Entfernung warten:
aptitudeDrü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-freeFü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 memcachedDanach führen Sie ein autoremove aus, um aufzuräumen:
apt-get autoremoveGehen 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 /tmpwget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gztar xvfz ISPConfig-3-stable.tar.gzcd ispconfig3_install/install/php –q update.phpISPConfig 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.2zu ändern in:
LoadFile /usr/lib/x86_64-linux-gnu/libxml2.so.2ODER (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.2Quelle: 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ückBearbeiten 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 0Die Lösung besteht darin, das suhosin-Paket zu entfernen.
apt-get purge php5-suhosinQuelle: 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 0Lö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’ {} \;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:
- https://www.howtoforge.com/community/threads/saslauthd-stops-working-every-few-weeks.66123/
- https://github.com/webmin/webmin/issues/58
- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758660
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 .phtmlansonsten 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ügbarLösung: Bearbeiten Sie /etc/postfix/sasl/smtpd.conf und ersetzen Sie
auxprop_plugin: mysqlmit
auxprop_plugin: sql
sql_engine: mysqlund
%umuss ersetzt werden durch
%u@%rQuelle: Danke an den anonymen Benutzer
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.