Distribution | Release | End Of Life |
Debian | Squeeze 6.0 | ca. Februar 2014 |
Heute Nacht hatte ich von 24 Uhr bis 7 Uhr 2 ISPConfig Server aktualisiert. Server1 läuft mit Apache, Postfix, Dovecot, BIND (Primary DNS), Pure-FTPd, MySQL (Master), Chroot_Jail SSH -> Server2 läuft mit Apache, Postfix, Dovecot, BIND (Secondary DNS), Pure-FTPd, MySQL (Master), Chroot_Jail SSH. Die Replikation zwischen der Master-Master MySQL Synchronisierung läuft über stunnel.
Wichtig: Das System auf jeden Fall vor dem Upgradevorgang sichern
— Sichert am besten das komplette System mit einem “dd” Image weg. —
1. Punkt: Sicherung der DEB6 Konfigurationen
cp -prfv /etc /etc_deb6_ispconfig_backup
2. Punkt: das derzeitige System auf den aktuellen Stand bringen (optional apt-get dist-upgrade -u)
apt-get update apt-get upgrade apt-get dist-upgrade
3. Punkt: screen / tmux installieren und Session starten, falls zwischenzeitlich die SSH Verbindung unterbrochen werden sollte, genügt ein erneuter SSH Login und mit “tmux attach” lässt sich die vorherige Setup-Session fortführen
apt-get install tmux tmux
4. Punkt: die wichtigsten ISPConfig Dienste beenden, dabei sollte zeitgleich auf beiden Maschinen “MySQL” beendet werden (sonst Out of Sync)
service mysql stop service apache2 stop service postfix stop service dovecot stop
5. Punkt: die neuen Debian Wheezy Paket-Mirrors eintragen
vi /etc/apt/sources.list
### ### ### PLITC ### ### ### deb http://ftp.de.debian.org/debian/ wheezy main deb-src http://ftp.de.debian.org/debian/ wheezy main deb http://ftp.de.debian.org/debian/ wheezy-updates main deb-src http://ftp.de.debian.org/debian/ wheezy-updates main deb http://ftp.de.debian.org/debian-security/ wheezy/updates main deb-src http://ftp.de.debian.org/debian-security/ wheezy/updates main deb http://ftp.de.debian.org/debian wheezy non-free ### ### ### PLITC ### ### ### # EOF
6. Punkt: Debian Wheezy minimales Upgrade
apt-get update apt-get upgrade
7. Punkt: Debian Wheezy Kernel Upgrade
dpkg -l | grep linux-image
meta-package linux-image Version installieren
apt-get install linux-image-amd64
manuell Grub erneut aktualisieren
update-grub
8. Punkt: Debian Wheezy udev Upgrade
apt-get install udev
9. Punkt: Vollständiges Debian Wheezy (dist) Upgrade durchführen
apt-get dist-upgrade
Hinweis: Der Updatevogang kann je nach installierten Komponenten einige Zeit in Anspruch nehmen und einige Eingabefelder (Grbu2 Parameter, Dienste restarten, etc) öffnen sich, welche eigentlich immer standardmäßig bestätigt werden können.
10. Punkt: System rebooten
reboot
ISPConfig foobar
Wer seine alten Konfigurationen beim apt-get dist-upgrade nicht ausgetauscht hat, bekommt jetzt ein kaputten:
– Dovecot
– MySQL (Master-Master Replikation geht komplett kaputt und muss neu eingerichtet werden)
– Apache
Ich hatte mir zu diesem Zweck, in ca. 30 Minuten, ein kompletten Debian ISPConfig3 (in der VirtualBox) aufgesetzt -> um die “sauber” erstellten Konfigurationen, aus dem frisch installierten Debian 7 + ISPConfig, mit meinem aktualisierten System vergleichen zu können.
Dovecot
Hier hat sich die komplette Konfigurationsstruktur geändert (Dovecot 1.x -> 2.x)
Die Vorlage gibts hier zum downloaden: plitc_deb6_upgrade_deb7_ispconfig3_dovecot_conf.tar.gz
Was nicht enthalten ist:
/etc/dovecot/private/dovecot.pem /etc/dovecot/dovecot.pem
Zertifikate neu erstellen oder aus dem /etc_deb6_ispconfig_backup verwenden
Ebenso muss der ISPConfig MySQL Login Password-Hash in der Konfig angepasst werden:
vi /etc/dovecot/dovecot-sql.conf
# connect = host=localhost dbname=dbispconfig user=ispconfig password= ...siehe /etc_deb6_ispconfig_backup... #
MySQL
Hier hat sich eine Option verändert:
language auskommentieren
vi /etc/mysql/my.cnf
#language = /usr/share/mysql/english
lc-messages-dir einfügen
lc-messages-dir = /usr/share/mysql
Für den Betrieb einer MySQL Master-Master Replikation sind folgende Optionen aus der Konfig rausgeflogen (deprecated):
vi /etc/mysql/my.cnf
### ### ### PLITC ### ### ### # MySQL Master / Master Replication # server-id = 1 replicate-same-server-id = 0 auto-increment-increment = 2 auto-increment-offset = 1 !!!DEPRECATED!!! ###---> master-host = 8XX.XXX.XXX.XXX !!!DEPRECATED!!! ###---> master-user = slaveuser !!!DEPRECATED!!! ###---> master-password = GEHEIM !!!DEPRECATED!!! ###---> master-connect-retry = 60 expire_logs_days = 10 max_binlog_size = 500M log_bin = /var/log/mysql/mysql-bin.log # slave_skip_errors=1007,1008 sync_binlog = 1 binlog-format = mixed ### ### ### PLITC ### ### ###
Apache2
Fehler:
# PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/suhosin.so' - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0 #
Lösung:
# mv /etc/php5/conf.d/suhosin.ini /etc/php5/conf.d/.suhosin.ini_OLD #
Postfix
Eine Option, betreffend Amavis, ist aus der master.cf rausgeflogen (DEPRECATED):
vi /etc/postfix/master.cf
127.0.0.1:10025 inet n - - - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks !!!DEPRECATED!!! ###---> -o smtpd_bind_address=127.0.0.1
zu guter Letzt -> immer fleißig syslogs anschauen
dmesg cat /proc/mdstat cat /var/log/messages cat /var/log/syslog cat /var/log/apache2/error.log cat /var/log/mail.err cat /var/log/mysql.err cat /var/log/ispconfig/cron.log
24.11.2013
Fehler:
# [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 9195, referer: https://my.little.server:8080/index.php [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 9195, referer: https://my.little.server:8080/index.php [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::element_implode() should not be called statically, assuming $this from incompatible context in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 14990, referer: https://my.little.server:8080/index.php [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 9195, referer: https://my.little.server:8080/index.php [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 9195, referer: https://my.little.server:8080/index.php [Mon Nov 18 14:27:44 2013] [warn] [client 146.XXX.XXX.XXX] mod_fcgid: stderr: PHP Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically in /usr/local/ispconfig/interface/lib/classes/simplepie.inc.php on line 9195, referer: https://my.little.server:8080/index.php #
Lösung: weitere Module installieren:
$ 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 $
und
vi /etc/apache2/mods-available/suphp.conf
<IfModule mod_suphp.c> #<FilesMatch "\.ph(p3?|tml)$"> # SetHandler application/x-httpd-suphp #</FilesMatch> AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml suPHP_AddHandler application/x-httpd-suphp <Directory /> suPHP_Engine on </Directory> # By default, disable suPHP for debian packaged web applications as files # are owned by root and cannot be executed by suPHP because of min_uid. <Directory /usr/share> suPHP_Engine off </Directory> # # Use a specific php config file (a dir which contains a php.ini file) # suPHP_ConfigPath /etc/php5/cgi/suphp/ # # Tells mod_suphp NOT to handle requests with the type <mime-type>. # suPHP_RemoveHandler <mime-type> </IfModule>
Fehler:
# PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cgi/conf.d/ming.ini on line 1 in Unknown on line 0 #
Lösung:
vi /etc/php5/cgi/conf.d/ming.ini
; configuration for php MING module extension=ming.so