Die Linux Distribution Debian 8 ‘Jessie’ wurde am 25.April nach ca. 2 Jahren Entwicklungsarbeit veröffentlicht.
Viele Pakete wurden aktualisiert, Apache, PHP und Konsorten sind jetzt relativ frisch enthalten.
Knapp 2 Wochen sind nun seit dem Release vergangen – wir kommen jetzt in die Zeit wo es sich lohnt upzudaten :)
Bei Debian ist es so, dass auch zwischen ‘Major Releases’ relativ gut und sicher upgedatet werden kann.
Ob man das machen möchte – oder lieber seine Server von Grund auf neu installiert – das bleibt jedem selbst überlassen.
Es gibt ja noch Support für Debian 7 ‘Wheezy’ – daher besteht kein Zwang zum upgrade.
Zum Update meldet ihr euch bitte als Root User an dem System an, alternativ könnt ihr die Arbeiten unter sudo ausführen, unten beschrieben ist die Methode als Root User!
1. System Backup erstellen – Daten sichern
Der ganz Erste und wichtigste Punkt beim Update ist, dass ihr eine Sicherung eurer wichtigen Daten und System Einstellungen vernehmt. Nur so könnt ihr im Zweifelsfall sicher stellen, dass ihr zu einem laufenden System zurück kehren könnt!
Was sollte mindestens gesichert werden?
- Alle Konfigurations Dateien, am einfachsten das komplette /etc Verzeichnis
- Debian Paket Informationen (/var/lib/dpkg, /var/lib/apt/extended_states, /var/lib/aptitude/pkgstates)
Benutzer Verzeichnisse werden beim Update nicht angefasst, auch Datenbanken nicht direkt, dennoch würde ich empfehlen, diese zu sichern, da z.B. bei den Datenbanken durch das Update von MySQL unter Umständen nicht vorhersehbare Probleme eintreten können.
Solltet ihr eine Virtualisierungslösung für euren Server nutzen (XEN oä) – dann könnt ihr in der Regel auch vor dem Update einen Snapshot des Servers anfertigen – dann geht das Backup relativ schnell :)
2. Downtime einplanen
Updates gehen nicht ohne Neustart von Diensten plus Neustart des Servers zum Update Ende. Hier müsst ihr also einplanen, dass Teile bzw. Dienste eures Servers, für einen gewissen Zeitraum nicht erreichbar sein werden. Dieser Zeitraum liegt irgendwo zwischen 1 und 3 Stunden, jenachdem wie viel Nacharbeit ihr noch vornehmen müsst. Solltet Ihr User oder Kunden auf dem Server haben, dann solltet ihr überlegen diese vorab zu informieren.
3. Wheezy auf aktuellen Stand bringen
Bevor ihr auf Jessie geht, müsst ihr erst einmal dafür sorgen, dass Wheezy auf dem aktuellen Stand ist, dazu benutzt ihr das folgende Shell Kommando
apt-get update && apt-get upgrade
4. sources.list Datei anpassen
Debian nutzt zum Updaten der Paket ‘apt’ – und dazu gehört eine Datei mit Informationen über das zu verwendende Repository. Diese Datei heißt /etc/apt/sources.list und enthält benötigte URL und/oder Pfade für die Debian Pakete. In dieser Datei müssen alle ‘wheezy’ gegen ‘jessie’ getauscht werden.
Die Datei sieht so – oder so ähnlich aus:
deb http://httpredir.debian.org/debian wheezy main deb-src http://httpredir.debian.org/debian wheezy main deb http://httpredir.debian.org/debian wheezy-updates main deb-src http://httpredir.debian.org/debian wheezy-updates main deb http://security.debian.org/ wheezy/updates main deb-src http://security.debian.org/ wheezy/updates main
hier werden mit dem folgenden Befehl die benötigten Änderungen durchgeführt, die erste Zeile erstellt euch ein Backup der sources.list
cp -p /etc/apt/sources.list /etc/apt/sources.list.deb7
sed -i 's/wheezy/jessie/g' /etc/apt/sources.list
5. Update aller Pakete
Nun haben Debian den Ort der neuen, aktuellen Pakete mitgeteilt, also müssen wir auch für die Installation dieser Pakete sorgen. Dieser Schritt muss vor dem eigentlichen Upgrade auf ‘Jessie’ erfolgen.
apt-get update && apt-get upgrade
6. Upgrade auf Jessie durchführen
Nachdem nun alle Updates ausgeführt sind, kommt das eigentliche Upgrade auf Debian 8 ‘Jessie’ dazu folgenden Befehl ausführen
apt-get dist-upgrade
Auch hier wieder auf mögliche Hinweis boxen achten, siehe Punkt 5.
7. Abschluss Arbeiten
Herzlichen Glückwunsch – euer System läuft nun auf Debian 8 ‘Jessie’.
Es lungern noch einige Paket auf dem System welche ihr entfernen könnt, dazu den folgenden Befehl nutzen:
apt-get autoremove
Damit noch ausstehende Kernel Änderungen durchgeführt werden können, führt bitte einen Reboot des Servers durch
reboot
Wenn ihr euch nun einloggt könnt ihr euch die aktuelle Debian Version ansehen bzw. überprüfen
cat /etc/debian_version
sowie die installierte Kernel Version ansehen
uname -a
Hinweise zu Apache Installationen
Von Wheezy nach Jessie ändert sich die Apache Version von 2.2.x auf 2.4.x – damit gehen einige Änderungen in den Konfigurationsdateien einher, welche vor einem erfolgreichen Neustart angepasst werden müssen, ihr solltet auf jeden Fall einen Blick auf die Apache Seite werfen (Link) und eure Konfigurationen entsprechend überprüfen bzw. anpassen.
Besonders erwähnen möchte ich die folgende Änderung:
2.2 Konfiguration:
Order allow,deny Allow from all
2.4 Konfiguration:
Require all granted
Wenn ihr das nicht anpasst – werdet ihr keine eurer Seiten aufrufen können ‘Access denied’…
In Options Zeilen müsst ihr darauf achten, dass alle Optionen ein + oder – vorangestellt haben (oder keine), im Zweifel fehlt hier in der 2.2 Konfiguration das ein oder andere + Zeichen
2.2 Konfiguration:
Options -Indexes IncludesNOEXEC +SymLinksifOwnerMatch +ExecCGI
2.4 Konfiguration:
Options -Indexes +IncludesNOEXEC +SymLinksifOwnerMatch +ExecCGI
Wenn ihr das beachtet, dann sollten schnell alle Probleme behoben sein. So – happy updating – und wenn ihr auf Probleme stoßt oder Fragen habt – bitte hier kommentieren!
Titelbild: Juliette Taka BELIN, Lizenz: Creative Commons Attribution 3.0 oder GNU GPL v2 oder später
Müsste es in Schritt 4 nicht heißen:
cat /etc/debian_version
Hallo,
ja danke sehr – das ist korrekt – ich habe es korrigiert!