Raspbian Jessie auf Basis von Debian 8

Was die Geheimhaltung von neuen Produkten oder Programmen betrifft, kann es die Raspberry Pi Foundation mit Apple aufnehmen: So wie der Raspberry Pi 2 im Februar 2015 vollkommen überraschend vorgestellt wurde, so kam auch gestern die Ankündigung der neuen Raspbian-Version wie ein Blitz aus heiterem Himmel. Zuletzt habe ich vor drei Monaten recherchiert, wann mit einer Umstellung von Raspbian auf die aktuelle Debian-Version 8 zu rechnen sei. Gefunden habe ich diesen Beitrag eines Moderators des Raspberry-Pi-Forums, dass man es mit der Umstellung auf Debian 8 nicht eilig habe und dass interne Tests momentan noch große Probleme verursachen würden.

Nun denn, das Warten ist vorbei. Diese Seite fasst die wichtigsten Neuerungen zusammen (zuletzt aktualisiert: Feb. 2016).

Ich bin so frei und bezeichne die neue Raspbian-Version einfach als »Raspbian Jessie«. Die Unterschiede zwischen dem ursprünglichen Raspbian auf der Basis von Debian 7 und dem aktuellen Raspbian auf der Basis von Debian 8 sind durchaus umfassend.

Download

Die neue Raspbian-Version ist wie üblich auf der Raspberry-Pi-Download-Seite verfügbar, und zwar wahlweise als NOOBS-Dateibündel zum direkten Kopieren auf eine VFAT-formatierte SD-Karte oder als Raspbian-Image-Datei. Ich habe für meine Tests die Image-Datei verwendet.

Die ZIP-Datei ist ca. 1,3 GByte groß. Windows-Anwender haben darüber geklagt, dass sich die komprimierte Image-Datei nicht entpacken lässt. Windows behauptet, die Image-Datei wäre mehrere TByte groß. Tatsächlich ist die Image-Datei ein wenig größer als 4 GByte. Die Lösung für alle Windows-Freunde ist die Verwendung eines externen ZIP-Tools, z.B. 7-ZIP.

Das ist natürlich eine gute Gelegenheit, sich wieder mal über Microsoft lustig zu machen: Vier GByte-Dateien sollten die Windows-internen ZIP-Funktionen eigentlich nicht überfordern.

Andererseits muss sich die Raspberry Pi Foundation auch fragen, ob ein derart riesiges Image wirklich sinnvoll ist. Ist es wirklich erforderlich, dass jeder Raspbian-Anwender mit LibreOffice beglückt wird? Möglicherweise wird es ja in Zukunft auch eine Lite-Version geben. Bis auf weiteres gilt aber: die minimale SD-Karten-Größe für die Raspbian-Installation beträgt 8 GByte.

Das Raspbian-Image ist übrigens nach wie vor für alle Raspberry-Pi-Modelle geeignet (anders als etwa openELEC, das getrennte Images für Pi und Pi2 anbietet). Die Raspbian-Entwickler sagen, eine spezielle Kompilierung für die Pi2-CPU würde keine nennenswerten Geschwindigkeitsverbesserungen mit sich bringen.

Konfiguration im Grafikmodus

Nachdem das Image auf eine SD-Karte übertragen ist, kann Raspbian sofort gestartet werden. Dieser erste Start ist eine Überraschung: Raspbian wird sofort im Grafikmodus gestartet. Der Desktop sieht auf den ersten Blick ziemlich unverändert aus. Allerdings verwendet die Benutzeroberfläche anfänglich englische Menüs und Dialoge, außerdem gilt das US-Tastaturlayout.

Der Desktop nach einer Neuinstallation von Raspbian Jessie
Der Desktop nach einer Neuinstallation von Raspbian Jessie

Von raspi-config ist nichts zu sehen. (Bei früheren Raspbian-Versionen wurde das Programm raspi-config beim ersten Start automatisch ausgeführt und half bei der Erstkonfiguration. raspi-config steht weiterhin zur Verfügung, aber wie Sie gleich sehen werden, gibt es jetzt eine Alternative mit grafischer Benutzeroberfläche.)

Zur Konfiguration starten Sie nun das neue Programm Preferences / Raspberry Pi Configuration (Paket- und Programmname rc_gui). Dieses Programm stellt all die Funktionen zur Verfügung, die bisher raspi-config bot. Die Bedienung ist aber wesentlich einfacher. Mit Expand vergrößern Sie das Dateisystem so, dass es Ihre ganze SD-Karte ausfüllt. (Anfänglich ist das Dateisystem nur ca. 4 GByte groß.) Außerdem sollten Sie ein neues Passwort einstellen und im Dialogblatt Localisation die deutsche Sprache, ein deutsches Tastaturlayout und eine passende Zeitzone einstellen. Danach starten Sie Raspbian neu.

Spracheinstellungen
Spracheinstellungen
Hardware-Funktionen und SSH aktivieren/deaktivieren
Hardware-Funktionen und SSH aktivieren/deaktivieren

Die Konfiguration der Tastatur hat bei meinen Tests nicht funktioniert. Gut, dass es raspi-config noch gibt — damit hat es geklappt.

Raspbian-Update: nicht empfohlen

Mit dem üblichen Update-Kommando apt-get update && apt-get dist-upgrade erhalten Sie nur Updates für die bisherige Raspbian-Version. Es erfolgt kein automatisches Update auf Raspbian Jessie.

Ein Distributions-Update ist technisch durchaus möglich, allerdings müssen Sie vor der Ausführung der beiden apt-get-Kommandos die Paketquellen verändern. In der Ankündigung der neuen Raspbian-Version wird davon abgeraten. Wenn Sie es doch versuchen möchten, finden Sie im Raspberry-Pi-Forum entsprechende Tipps.

Ich schließe mich in diesem Punkt der Raspberry Pi Foundation an: Es handelt sich hier nicht um ein Update von Version 1.0.7 auf 1.0.8, vielmehr wird die gesamte Distribution mit all seinen Komponenten erneuert. Die Gefahr, das dabei etwas schief geht, d.h. dass Ihre eigene Konfiguration von Raspbian dazu führt, dass nach dem Update diverse Dinge nicht mehr funktionieren, ist nahezu 100 Prozent. Die dann erforderliche Fehlersuche ist sicherlich noch aufwendiger als die zugegebenermaßen auch mühsame Neuinstallation samt Backup, Dienste neu einrichten etc.

Versionsnummern

Die folgenden Tabellen fassen die Versionsnummer wichtiger Raspbian-Komponenten zusammen. Teilweise habe ich zum Vergleich auch bisher gültigen Versionsnummern bzw. Komponenten angegeben.

Basis                  
---------------        
glibc        2.19          
Kernel       4.1          
Systemd      215   (bisher Init-V)
X-Server     1.16         


Programmierung     
---------------    
bash      4.3      (bisher 4.2)
gcc       4.9      
Java      8      
PHP       5.6
Python    2.7/3.4  (bisher 2.7/3.2)


Server
--------------
Apache    2.4      (bisher 2.2)
CUPS      1.7      (bisher 1.5)
MySQL     5.5
OpenSSH   6.7
Samba     4.1      (bisher 3.6)

Bluetooth

Das im Buch auf S. 234 beschriebene Konfigurationswerkzeug bluez-simple-agent gibt es nicht mehr. Der Bluetooth Manager funktioniert weiterhin recht unzuverlässig. Wie Sie eine manuelle Konfiguration mit dem neuen Kommando bluetoothctl bewerkstelligen, haben wie im Blogbeitrag Bluetooth-Konfiguration mit bluetoothctl beschrieben.

Init-System

Zu den größten strukturellen Änderungen in Raspbian Jessie zählt das Init-System, das vom traditionellen Init-V-Prozess auf Systemd umgestellt wurde.

Der Boot-Prozess unter Raspbian Jessie
Der Boot-Prozess unter Raspbian Jessie

Desktop-Anwender werden von dieser Umstellung nichts bemerken, aber wer in den Bootprozess eingreifen will, muss sich an einige Neuerungen gewöhnen. Da sich Raspbian wie Debian sehr stark auf die Init-V-Kompatibilität von Systemd verlässt, sind die Änderungen insgesamt weniger dramatisch als bei anderen Distributionen (Fedora, SUSE etc.). So gibt es für die meisten Netzwerkdienste noch traditionelle Init-V-Dateien, die wie bisher durch insserv aktiviert bzw. insserv -r deaktiviert werden können. Das gilt z.B. für den SSH-Server sshd.

Das Kommando service name start/stop/restart/reload kann weiterhin verwendet werden. Alternativ können Sie Dienste nun aber auch mit dem Systemd-eigenen Kommando systemctl starten/stoppen:

systemctl start ssh      (jetzt starten)
systemctl stop ssh       (jetzt stoppen)
systemctl enable ssh     (in Zukunft automatisch starten)
systemctl disable ssh    (in Zukunft nicht mehr autom. starten)

Anstelle von Runlevel gibt es nun Targets. Unter Raspbian ist standardmäßig das Target graphical aktiv:

systemctl get-default
  graphical.target

Die wichtigste Alternative zu diesem Target heißt multi user. Wenn Sie dieses Target aktivieren, wird Raspbian beim nächsten Neustart ohne die Grafikoberfläche gestartet:

systemctl set-default multi-user.target
  Created symlink from /etc/systemd/system/default.target 
  to /lib/systemd/system/multi-user.target.

Wenn Sie das Target momentan ändern möchten (nicht dauerhaft), führen Sie systemctl isolate aus. Das folgende Kommando wechselt aus dem Textmodus in den Grafikmodus:

systemctl isolate graphical.target

Kommandos, die am Ende des Bootprozesses ausgeführt werden sollen, können Sie weiterhin im Script /etc/rc.local angeben. Achten Sie darauf, dass Sie Ihre Anweisungen vor der in der Datei bereits vorhandenen exit-Anweisung angeben!

IPv6

In Raspbian Jessie ist IPv6 — wie in nahezu allen gängigen Distributionen — standardmäßig aktiv.

GPIO-Zugriff ohne sudo

Python-Scripts, die das RPi.GPIO-Modul verwenden, können nun auch ohne sudo GPIOs auslesen und verändern.

WiringPi vorinstalliert

WiringPi muss nicht länger heruntergeladen und selbst kompiliert werden. Die Bibliothek befindet sich jetzt im Paket wiringpi. Dieses Paket ist standardmäßig installiert.

halt funktioniert nicht mehr

sudo halt fährt den Rechner hinunter, schaltet den Raspberry Pi aber nicht vollständig aus. Abhilfe: Verwenden Sie sudo halt -p oder sudo shutdown now.

Apache

Anstelle von Version 2.2 ist nun Version 2.4 installiert. In den Defaulteinstellungen gilt nun /var/www/html als Startpunkt für eigene HTML-Dateien (DocumentRoot), nicht mehr /var/www.

Links