Raspberry Pi – Der praktische Einstieg

Transcription

Raspberry Pi – Der praktische Einstieg
Kapitel 2
Schnellstart: Die erste Inbetriebnahme
Sie haben jetzt bereits einen kleinen Überblick über die Ausstattung
des Raspberry Pi bekommen. Da Sie jetzt wissen, womit Sie es zu tun
haben, wird es Zeit, dem kleinen Computer Leben einzuhauchen!
Dieses Kapitel beschäftigt sich mit der ersten Inbetriebnahme des Raspberry Pi und
dem Betriebssystem Raspbian Wheezy. Ich erkläre Ihnen, wie Sie das Betriebssystem
installieren und welche alternativen Betriebssysteme es gibt. Zudem werden wir eine
Grundlagenbasis schaffen, um das Betriebssystem, das auf Linux basiert, etwas besser
zu verstehen. Im letzten Schritt werden wir den Raspberry Pi zum ersten Mal booten
und einige Grundeinstellungen daran vornehmen.
2.1 Installieren des Betriebssystems Raspbian Wheezy
Zum Einstieg werden wir das Betriebssystem Raspbian Wheezy verwenden. Ich werde
zwar später noch andere Betriebssysteme vorstellen, aber für Anfänger ist dieses
Betriebssystem erst einmal die bessere Wahl, da schon einige wichtige Programme mitgeliefert werden.
Das nötige Raspbian-Wheezy-Image können Sie auf der offiziellen Raspberry-Pi-Seite
unter Downloads (www.raspberrypi.org/downloads) herunterladen. Für die Installation
eines Betriebssystems benötigen Sie eine mit dem FAT-32-Dateisystem formatierte
SD-Karte!
So formatieren Sie eine SD-Karte unter Windows
Falls Sie eine SD-Karte verwenden, die in einem anderen Dateisystem als FAT-32 formatiert ist, dann müssen Sie diese SD-Karte vor dem Bespielen mit dem Image formatieren. Beachten Sie: Bei diesem Vorgang werden alle Daten auf der SD-Karte gelöscht!
Falls die Karte wichtige Daten enthält, dann sichern Sie die entsprechenden Dateien
unbedingt, bevor Sie die folgenden Schritte durchführen:
Öffnen Sie den Computer (aus früheren Windows-Versionen bekannt als Arbeitsplatz). Schieben Sie dann die SD-Karte in den Kartenleser des Rechners. Die SD-Karte
23
2
2
2.1
Schnellstart: Die erste Inbetriebnahme
wird nun im Computer angezeigt und bekommt einen Laufwerksbuchstaben zugewiesen (z. B. »G«). Merken Sie sich diesen Laufwerksbuchstaben, da Sie ihn im nächsten
Schritt benötigen (vergleiche dazu Abbildung 2.2). Nach einem Rechtsklick auf die SDKarte im Arbeitsplatzmenü können Sie mit einem Klick auf Formatieren... das Formatierungsmenu der SD-Karte öffnen (siehe Abbildung 2.1).
Installieren des Betriebssystems Raspbian Wheezy
4. Stecken Sie die SD-Karte in den Kartenleser.
5. Wählen Sie das heruntergeladene Raspbian-Image und unter Device die zu beschreibende SD-Karte aus (siehe Abbildung 2.2), und drücken Sie auf den Write-Button.
Abbildung 2.2 Der Win32 Disk Imager
2.1.2 Die Installation auf einem Mac
1. Entpacken Sie das Raspbian-Image, zum Beispiel mit einem Programm wie UnRarX.
2. Legen Sie die SD-Karte in den Kartenleser.
Abbildung 2.1 Hier starten Sie den Formatierungsprozess der SD-Karte.
In dem sich nun öffnenden Fenster wählen Sie als Dateisystem FAT-32. Klicken Sie dann
auf Starten. Nach wenigen Augenblicken ist die SD-Karte fertig formatiert und einsatzbereit.
3. Im Apple-Menü suchen Sie unter »USB« den BSD-Namen der Karte heraus (wie z. B.
/dev/disk1s1) und unmounten anschließend die Karte, so dass Sie den Inhalt der Karte
überschreiben dürfen. Der Befehl sieht z.B. so aus (den Namen /dev/disk1s1 müssen
Sie natürlich anpassen!):
diskutil unmount /dev/disk1s1
4. Öffnen Sie ein Terminal, und geben Sie
Die Installation des Betriebssystems auf der SD-Karte ist je nach auf dem Computer verwendetem Betriebssystem unterschiedlich. Ich werde die Installationsroutinen nachfolgend kurz erklären.
sudo dd if=Pfad zum Image.img of=/dev/diskN bs=1m
ein. Ersetzen Sie dabei das N durch die Disknummer.
2.1.3 Die Installation unter Linux
2.1.1 Die Installation auf einem Windows-Computer
1. Entpacken Sie das heruntergeladene Raspbian-Image, beispielsweise mit dem Gratisprogramm 7-Zip, das Sie z.B. bei www.chip.de herunterladen können. Falls Sie als
Betriebssystem Windows 7 oder höher verwenden, können Sie den Download des
Programms 7-Zip auslassen, da Ihr Betriebssystem Dateien bereits von sich aus entpacken kann.
2. Jetzt installieren Sie das Tool Win32 Disk Imager, das Sie auch bei www.chip.de finden
und ebenfalls mit dem Programm 7-Zip entpacken können.
1. Als Erstes öffnen Sie ein Konsolenfenster (z.B. im Terminal unter Ubuntu).
2. Wechseln Sie in das Downloadverzeichnis mit dem Raspbian-Image:
cd /Pfad zum Verzeichnis
3. Anschließend entpacken Sie das Raspbian-Image mit folgendem Konsolenbefehl:
unzip Datei.zip
4. Legen Sie eine FAT32-formatierte SD-Karte in den Kartenleser ein.
3. Anschließend starten Sie den Win32 Disk Imager.
24
25
2
2
Schnellstart: Die erste Inbetriebnahme
5. Mit ls /dev finden Sie heraus, wie die SD-Karte benannt ist, z.B. sdb1 (siehe Abbildung 2.3). Dies prüfen Sie am leichtesten, indem Sie die Karte herausziehen, dann den
Befehl eingeben und dasselbe mit eingesteckter Karte wiederholen.
2.2
Vorbemerkungen zu Linux: Was Linux ist und wie es grundsätzlich funktioniert
2.2 Vorbemerkungen zu Linux: Was Linux ist und wie es
grundsätzlich funktioniert
2
Das Betriebssystem Raspbian Wheezy ist eine Distribution, sprich eine »Unterart« des
Betriebssystems Debian. Es gibt viele verschiedene Betriebssysteme auf Linux-Basis,
und alle verwenden den Linux-Kernel.
Ohne Karte
Mit eingesteckter Karte
Abbildung 2.3 Die SD-Karte wurde erkannt.
6. Mit ls überprüfen Sie wie in Abbildung 2.4, wie das Image heißt. Der in weißer Schrift
angezeigt Name ist der Name des Images.
Abbildung 2.4 Das Image im Downloadordner
Prüfen, ob das korrekte Speichermedium beschrieben wird
Bevor Sie den Schreibvorgang starten, sollten Sie prüfen, ob Sie auch das richtige Speichermedium ausgewählt haben. Sobald Sie den Schreibvorgang starten, sind alle Daten
auf dem Speichermedium verloren!
7. Im letzten Schritt spielen Sie das Image auf die Karte auf:
sudo dd bs=1M if=[Pfad zum Image.zip] of=[Pfad zur Karte]
Auf mein Beispiel übertragen, würde der Befehl also so lauten:
dd bs=1M if=2013-07-26-wheezy-raspbian.img of=/dev/sdb
8. Sobald der Kopiervorgang fertig ist, erscheint die Meldung aus Abbildung 2.5. Danach
ist die SD-Karte einsatzbereit.
2.2.1 Was ist ein Kernel?
Ein Kernel ist der Kern eines Betriebssystems. Der Kernel organisiert die komplette
Hardware eines Systems und sorgt so dafür, dass das System reibungslos und effizient
arbeitet. Nach außen hin arbeitet der Kernel als Dienstleister und bietet Programmen
auf dem System Speicherplatz und Zeit zum Ausführen an. Wenn ein Programm ausgeführt wird, erhält es vom Kernel eine bestimmte Priorität und eine bestimmte Menge
Prozessorzeit. Wenn das Programm Sonderwünsche hat – z.B. den Wunsch, ein weiteres
Programm ausführen zu dürfen –, dann muss das Programm diesen Wunsch an den
Kernel weiterleiten. Er entscheidet anschließend, ob dieser Wunsch erfüllt wird oder
nicht. Der Kernel verwaltet außerdem alle Treiber. Treiber werden benötigt, um Peripheriegeräte, die nicht zum System gehören, nutzen zu können. Für jedes Gerät – sei es
eine Maus, eine Tastatur o. Ä. – wird ein Treiber benötigt. Ohne den passenden Treiber
kann der Kernel ein Peripheriegerät nicht ansprechen, und es funktioniert nicht.
Der Kernel selbst ist ebenfalls ein Programm. Dieses Programm wird beim Einschalten
aus dem Speicher, der das Betriebssystem enthält, geladen und in den Hauptspeicher
(Arbeitsspeicher) kopiert, wo es dann seine Arbeit verrichtet. In unserem Fall ist der
Speicher mit dem Betriebssystem die SD-Karte.
2.2.2 Linux ist ein Multiusersystem
Linux ist ein sogenanntes Multiuser- oder Mehrbenutzersystem. Bei einem Multiusersystem handelt es sich um ein Betriebssystem, das über Mittel verfügt, eine Arbeitsumgebung für verschiedene Nutzer bereitzustellen. Diese Arbeitsumgebungen sind
voneinander getrennt, und jeder User hat nur auf seine eigene Arbeitsumgebung
Zugriff. Die User können dabei entweder gleichzeitig oder nacheinander an demselben
System arbeiten.
Abbildung 2.5 Der Kopiervorgang ist beendet.
Der Schreibvorgang kann je nach Kartenleser und Betriebssystem eine gewisse Zeit in
Anspruch nehmen. Nutzen wir die Zeit, um das Betriebssystem etwas näher kennenzulernen.
26
2.2.3 Zugriffsrechte auf dem Raspberry Pi: Was darf ich, und was darf ich nicht?
Um zu gewährleisten, dass nur der jeweilige Besitzer Zugriff auf seine Dateien erhält
und nicht jemand anders, verfügt das Betriebssystem über eine ganze Reihe von Sicher-
27
2
Schnellstart: Die erste Inbetriebnahme
heitsmaßnahmen. So können bestimmte Aufgaben nur mittels eines sogenannten
root- oder auch Administrator-Accounts (»Account« wird im Deutschen in diesem
Zusammenhang mit »Benutzerkonto« übersetzt) ausgeführt werden. Dieser rootAccount verfügt über alle Rechte und darf dementsprechend auch auf alles zugreifen.
Ich bin »root«, ...
... ich darf das: Dieser in der Linux-Community gängige Slogan macht mit einem Augenzwinkern die Bedeutung von »root« begreiflich. Dieser Benutzer bzw. »User« darf aufgrund seiner uneingeschränkten Macht auf dem betreffenden System einfach alles –
und wird deshalb oft als Superuser bezeichnet.
Diese uneingeschränkte Macht hat allerdings zwei Seiten: Sind Sie auf Ihrem System als
root angemeldet, dann können Sie alles machen – im Notfall also auch Schaden anrichten! Gehen Sie mit der Anmeldung als root also möglichst sorgsam um, und verwenden Sie diesen Benutzer nur, wenn Sie die entsprechenden Berechtigungen zwingend
benötigen.
Auf diesen Punkt werde ich im weiteren Verlauf auch immer wieder einmal aufmerksam machen.
Ein normaler Benutzer (oder »User«) hingegen hat nur Zugriff auf sein Verzeichnis;
alles, was in der Hierarchie höher angeordnet ist als sein Verzeichnis, darf er nicht betreten. Jeder Benutzer kann außerdem verschiedenen Gruppen zugeordnet werden, und
diesen Gruppen kann dann der Zugriff auf bestimmte Dateien verwehrt oder gestattet
werden. Zusammengefasst bedeutet dies, dass das Betriebssystem drei verschiedene
Zugriffsarten berücksichtigen muss:
2.2
Vorbemerkungen zu Linux: Was Linux ist und wie es grundsätzlich funktioniert
왘 für den Besitzer der Datei
왘 für den Zugriff durch die Gruppe des Eigentümers
2
왘 öffentliche Berechtigungen
Insgesamt besitzt jede Datei also neun Bits, die den Zugriff regeln (es sind noch weitere
Bits vorhanden, aber die sind für unsere Zwecke uninteressant). Ist zum Beispiel für den
Besitzer einer Datei Test.txt das w-Bit nicht gesetzt, kann der Besitzer der Datei nicht in
die Datei schreiben. Es erscheint dann die Meldung aus Abbildung 2.6.
Abbildung 2.6 Zugriff verweigert
Anders liegt der Fall, wenn das w-Bit für den Besitzer gesetzt ist, aber nicht für alle anderen. Dann darf nur der Besitzer in die Datei schreiben. Das ist in Abbildung 2.7 zu sehen.
Abbildung 2.7 Zugriff gewährt
Der User root ist natürlich von all diesen Regeln ausgenommen. Wer als User root unterwegs ist, darf alles auf dem System machen, was er möchte.
왘 den Zugriff über den Besitzer
Fehlende Zugriffsrechte
왘 den Zugriff über die Gruppe
Wenn die Meldung Permission denied erscheint oder nichts in eine Datei geschrieben
wurde, handelt es sich in den meisten Fällen um fehlende Zugriffsrechte!
왘 den Zugriff über einen User, der weder der Gruppe angehört und auch nicht der
Besitzer ist: öffentlicher Zugriff genannt
Natürlich können Sie die Rechte auch wie in Abbildung 2.8 anzeigen.
Jede Datei besitzt deshalb für jede Zugriffsart drei verschiedene Bits, die festlegen, wer
wie auf die Datei zugreifen darf.
2.2.4 Die Zugriffbits
Jede Datei verfügt über ein Bit, das den lesenden Zugriff steuert (r), ein Bit für den schreibenden Zugriff (w) und ein Bit zum Ausführen der Datei (x). Diese drei Bits sind in dreifacher Ausführung vorhanden:
28
Abbildung 2.8 Anzeigen der Zugriffsrechte einer Datei
Die genaue Erklärung des Befehls erfolgt später, ich greife nur beim Thema »Rechte«
etwas vor. Ab dem zweiten Zeichen von links werden die Rechte dargestellt, und zwar
29
2
2.3
Schnellstart: Die erste Inbetriebnahme
immer in einem Dreierblock für jede Zugriffsart: Besitzer, Gruppe, öffentlich. In dem Beispiel oben ist also folgender Fall abgebildet:
1. Der Besitzer darf lesen (r) und schreiben (w).
Die Verzeichnisstruktur
Abbildung 2.10 zeigt den kompletten Verzeichnisbaum eines Linux-Betriebssystems.
Jeder dieser Ordner in dem Verzeichnisbaum hat eine ganz spezielle Aufgabe, die wir
uns etwas genauer anschauen wollen.
2. Die Gruppe darf lesen (r).
3. Öffentliche Benutzer dürfen lesen (r).
Außerdem wird gezeigt, welchem Benutzer und welcher Gruppe die Datei gehört. In diesem Fall gehört die Datei dem Benutzer pi und der Gruppe pi. In dem Programm FileZilla
werden die Rechte sehr ausführlich dargestellt, wie Abbildung 2.9 zeigt.
Abbildung 2.10 Der komplette Verzeichnisbaum
왘 bin (Kurzform für binaries – Programme): In diesem Verzeichnis liegen alle wichtigen
und unverzichtbaren Programme für das Betriebssystem.
Abbildung 2.9 Die Rechte im Überblick in FileZilla
Dieses Programm werden Sie in Abschnitt 4.7, »Fernzugriff über SSH«, noch genauer
kennenlernen, weil es die Möglichkeit bietet, bequem Dateien zwischen einem
Windows-PC und dem Raspberry Pi zu transferieren.
2.3 Die Verzeichnisstruktur
Nun schauen wir uns den Verzeichnisbaum oder die Ordnerstruktur genauer an. Die
ganze Verzeichnisstruktur baut auf einem Ausgangsverzeichnis mit dem Namen »/«
auf. Dieses Verzeichnis wird auch Root- oder Wurzelverzeichnis genannt. Dieses Verzeichnis ist die erste Verzeichnisebene und stellt in der Regel die Bootpartition des
Betriebssystems dar. Alle anderen Verzeichnisse sind Unterverzeichnisse des Rootverzeichnisses.
30
왘 boot: Dieses Verzeichnis enthält alle für den Bootvorgang notwendigen Dateien.
Hier ist der Kernel des Betriebssystems gespeichert, und über die Datei config.txt
können Sie Änderungen an der Taktfrequenz und am HDMI (z.B. automatische
Monitorerkennung beim Einstecken eines Monitors) vornehmen.
왘 dev (Kurzform für devices – Geräte): Hardwarekomponenten des Prozessors werden
fast immer durch Dateien repräsentiert, womit diese Komponenten verwendet werden können. All diese Dateien finden sich im Verzeichnis /dev wieder.
왘 etc (et cetera – alles Übrige): Manche Programme benötigen Konfigurationsdateien,
die bestimmte Einstellungen speichern. Diese Dateien werden im Verzeichnis /etc
abgelegt. In diesem Verzeichnis finden sich z.B. Informationen zur Netzwerkkonfiguration und für die Displayserver, die für ein Bild am Monitor zuständig sind.
왘 home: Dieses Verzeichnis enthält für jeden Benutzer des Systems ein Unterverzeichnis. Dieses Verzeichnis bekommt immer denselben Namen wie der Benutzer, dem es
gehört, und es stellt gleichzeitig das Ursprungsverzeichnis des Verzeichnisbaums
eines Nutzers dar (siehe Abbildung 2.11).
31
2
2
2.3
Schnellstart: Die erste Inbetriebnahme
Abbildung 2.11 Die »home«-Verzeichnisse zweier User
Der User pi zum Beispiel besitzt im Verzeichnis /home ein Unterverzeichnis /pi, und
dieses Verzeichnis ist das erste Verzeichnis in seinem Verzeichnisbaum. Er darf also
z.B. nicht auf das Verzeichnis /etc zugreifen, da er das Verzeichnis /home/pi nicht
nach oben hin verlassen darf. Die einzige Ausnahme ist der User root – für ihn gilt
diese Beschränkung nicht. Da das höchste Verzeichnis im Betriebssystem das Verzeichnis mit dem Pfad / ist, kann der User root natürlich in kein höheres Verzeichnis
als das Wurzelverzeichnis wechseln.
왘 lib (Kurzform für libraries – Bibliotheken): Wenn man ein Programm schreibt, kommt
man irgendwann an den Punkt, wo bestimmte Funktionen nur durch externe Bibliotheken verfügbar gemacht werden können. Damit das geschriebene Programm dann
auf anderen Systemen ebenfalls funktioniert, muss die Bibliothek zusammen mit
dem Programm kopiert werden. All diese Bibliotheken finden sich im Verzeichnis
/lib wieder.
Die Verzeichnisstruktur
왘 root: Dies ist das Homeverzeichnis des Superusers root. Es gibt einen guten Grund,
warum das Homeverzeichnis des Superusers an einer anderen Stelle gespeichert ist
als das der anderen User: Wenn das Homeverzeichnis der anderen User aus irgendeinen Grund nicht mehr verfügbar sein sollte, kann immer noch mit dem Superuser
gearbeitet werden.
왘 run: In diesem Verzeichnis werden verschiedene Laufzeitinformationen von Programmen gespeichert.
왘 sbin (Kurzform für system binaries – Systemdateien): Dieses Verzeichnis enthält alle
für die Systemverwaltung notwendigen Programme. All diese Programme können
nur als Superuser ausgeführt werden (z.B. shutdown).
왘 srv (Kurzform für services – Dienste): Nicht genauer spezifiziert, und deswegen ist
dieses Verzeichnis leer.
왘 sys (Kurzform für system – System): Enthält ebenso wie /proc Kernelschnittstellen.
왘 tmp (Kurzform für temporary – temporär): Hier werden temporäre Dateien gespeichert. Dieses Verzeichnis wird beim Booten geleert.
왘 usr (Kurzform für user – Benutzer): Dieses Verzeichnis ist für Systemtools, Bibliotheken und installierte Programme bestimmt.
왘 lost+found: Hier lagert das Betriebssystem Dateien und Dateifragmente aus, die
beim Versuch, ein defektes Dateisystem zu reparieren, übrig geblieben sind.
왘 var (Kurzform für variable – variabel): Hier werden variable Inhalte wie Speicherstände und Logs gespeichert.
왘 media: Wenn portable Speichermedien wie externe Festplatten, CD-ROM-Laufwerke
oder USB-Sticks an das System angeschlossen werden, werden sie gemountet, sprich
für das System verfügbar gemacht, und in diesem Verzeichnis dargestellt. Dies kann
dann z.B. so aussehen wie in Abbildung 2.12.
Natürlich ist es nicht zwingend notwendig, dass Sie die Bedeutung aller Verzeichnisse
und deren Inhalt bis ins kleinste Detail kennen. Einige Dateien enthalten jedoch grundlegende Systeminformationen, die ab und an doch sehr nützlich sein können. Die wichtigsten habe ich nachfolgend aufgelistet:
왘 /etc/rc.local
Abbildung 2.12 Ein gemounteter USB-Stick
왘 mnt (Kurzform für mount): Dieses Verzeichnis kann dafür genutzt werden, Datenträger manuell zu mounten.
Eine Art Autostart. Diese Datei wird bei jedem Bootvorgang ausgeführt. Alles, was vor
dem exit 0 steht, wird ausgeführt.
In Abbildung 2.13 sehen Sie ein kleines Beispiel, wie bei jedem Booten der Text
»Hallo« in die Datei /tmp/Test.txt geschrieben wird.
왘 opt (Kurzform für optional): Wenn Programme, die nicht zur Distribution gehören
und eigene Bibliotheken besitzen, installiert werden sollen, wählt man dafür das Verzeichnis /opt.
왘 proc (Kurzform für processes – laufende Prozesse): Hier sind alle Schnittstellen zum
Kernel enthalten. Außerdem lassen sich hier verschiedene Dateien auslesen, welche
Informationen zur CPU und der Kernelversion beinhalten.
32
Abbildung 2.13 So wird ein Befehl automatisch ausgeführt.
33
2
2
2.4
Schnellstart: Die erste Inbetriebnahme
Welche alternativen Betriebssysteme gibt es?
왘 /sys/devices/virtual/thermal/thermal_zone0/temp
Hier befindet sich die Temperatur der CPU. Dieser Wert kann einfach ausgelesen werden (siehe Abbildung 2.14).
2
Abbildung 2.14 Die aktuelle Temperatur des SoC
왘 /proc/version
Abbildung 2.17 Informationen über den Prozessor
Hier finden sich, wie in Abbildung 2.15 zu sehen, Informationen zum aktuellen Kernel.
2.4 Welche alternativen Betriebssysteme gibt es?
Abbildung 2.15 Informationen über den Kernel
왘 /sys/class/gpio/export
Über diese Datei können die Ein- und Ausgänge des Raspberry Pi verfügbar gemacht
werden. Wird z.B. eine 7 in die Datei geschrieben, erscheint ein neuer Ordner namens
gpio7 im Verzeichnis /sys/class/gpio (siehe Abbildung 2.16). Darin befinden sich dann
alle Dateien, die notwendig sind, um auf den GPIO 7 zuzugreifen.
Natürlich gibt es nicht nur das Betriebssystem Raspbian Wheezy. Da das ganze Raspberry-Pi-Projekt Open Source ist, haben sich im Laufe der Zeit viele verschiedene
Betriebssysteme entwickelt, die zum Teil aus der Linux-Community und zum Teil aus
der Raspberry-Pi-Community stammen. Ein paar dieser Betriebssysteme möchte ich
hier kurz vorstellen:
왘 NOOBS (New Out Of Box Software): Dieses Betriebssystem ist für Neueinsteiger
gedacht, die noch nicht wissen, welches Betriebssystem sie wählen sollen. Es umfasst
Raspbian Wheezy, Pidora und zwei Versionen eines Mediacenters. Es besteht außerdem die Möglichkeit, das Betriebssystem durch Drücken von (ª) während des Bootvorgangs zu wechseln (siehe Abbildung 2.18).
Abbildung 2.16 Der Ordner für den GPIO 7
왘 /proc/cpuinfo
In dieser Datei stehen alle Informationen zur verwendeten CPU (siehe Abbildung 2.17).
Wenn in einem Programm z.B. eine Unterscheidung zwischen der alten 256-MB-Version des Raspberry Pi und der neuen 512-MB-Version gemacht werden soll, können
Sie diese Datei zu Hilfe nehmen. Sie werden in Abschnitt 8.5.1 eine Möglichkeit kennenlernen, diese Datei mit Hilfe eines Programms auszulesen.
Abbildung 2.18 Die Auswahl des Betriebssystems
34
35
2
Schnellstart: Die erste Inbetriebnahme
왘 Pidora: Bei Pidora handelt es sich um eine für den Raspberry Pi optimierte Version
des Computerbetriebssystems Fedora (siehe Abbildung 2.19).
Abbildung 2.19 Der Pidora-Installationsbildschirm
2.5
Ich bin so weit ... Jetzt geht’s los! Das System richtig konfigurieren
왘 RISC OS: RISC OS ist ein schlankes und schnelles Multitasking-Betriebssystem, das
ausschließlich auf ARM-Prozessoren läuft. Das Betriebssystem besitzt eine Vielzahl
von austauschbaren Modulen, die für Festplattenzugriffe, grafische Oberflächen etc.
zuständig sind.
Abbildung 2.20 Der Homescreen des XBMC-Mediacenters
왘 Arch Linux ARM: Dieses Betriebssystem verfügt nur über die notwendigsten Komponenten. Aus diesem Grund bootet es innerhalb von zehn Sekunden. Es ist allerdings nicht für Einsteiger geeignet, da keinerlei Zusatzsoftware wie z.B. eine grafische
Oberfläche vorhanden ist und alles nachträglich kompiliert und installiert werden
muss.
Die verschiedenen Betriebssysteme, mit Ausnahme der beiden Mediacenter Raspbmc
und OpenElec, lassen sich alle auf der offiziellen Raspberry-Pi-Website downloaden:
www.raspberrypi.org.
왘 Raspbmc, OpenElec: Diese beiden Betriebssysteme sind dafür gedacht, den Raspberry Pi in ein XBMC-Mediacenter zu verwandeln (siehe Abbildung 2.20). Sie unterstützen das Einbinden eines NAS (Abkürzung für Network Attached Storage), also
eines Netzwerkspeichers – wie z.B. einen Dateiserver – und sind darauf ausgelegt,
Filme, Musik und Fotos wiederzugeben. Sie bieten die Möglichkeit, Festplatten und
USB-Sticks anzuschließen, um die darauf gespeicherten Medien wiederzugeben. Das
XBMC-Mediacenter werde ich Ihnen in Kapitel 6 noch genauer vorstellen und Ihnen
zeigen, wie Sie ein Mediacenter auf der Basis von Raspbmc installieren und einrichten. Das Mediacenter OpenElec wird dort nicht extra behandelt, da es sich um eine
»abgespeckte« Version von Raspbmc handelt.
2.5 Ich bin so weit ... Jetzt geht’s los!
Das System richtig konfigurieren
36
Jetzt, da Sie im Groben wissen, wie das Betriebssystem funktioniert und welche anderen
Betriebssysteme es noch gibt, können wir uns das Betriebssystem Raspbian Wheezy
endlich live auf dem Raspberry Pi anschauen.
Hierfür schieben Sie die SD-Karte mit dem Betriebssystem in den Raspberry Pi und stecken den Micro-USB-Stecker des Netzteils ein. Jetzt leuchtet die rote LED auf und signalisiert, dass Spannung am Raspberry Pi anliegt. Wenig später sollten auch die gelbe und
die grüne LED der LAN-Verbindung leuchten (siehe Abbildung 2.21).
37
2
2
2.5
Schnellstart: Die erste Inbetriebnahme
Ich bin so weit ... Jetzt geht’s los! Das System richtig konfigurieren
2.5.1 Das Menü »raspi-config«
Das raspi-config-Menü hilft Neueinsteigern bei der erstmaligen Konfiguration des kleinen Computers. Dieses Menü können Sie später immer wieder durch die Konsoleneingabe sudo raspi-config aufrufen.
Einfach konfigurieren
Das Menü raspi-config stellt eine leichte und übersichtliche Möglichkeit dar, verschiedene Einstellungen am Raspberry Pi zu ändern, ohne dass viel Erfahrung mit dem
Betriebssystem nötig ist.
2.5.2 »Expand Filesystem«
Abbildung 2.21 Los geht’s! Der Raspberry Pi in Betrieb
Die LED (Act) über der roten LED (PWR) blinkt nun, und wenige Momente später
erscheint das Bild aus Abbildung 2.22 auf dem angeschlossenen Monitor.
Diesen Menüpunkt führen Sie als Erstes aus. Bestätigen Sie die Eingabe einfach mit einem
Druck auf die (¢)-Taste. Jetzt beginnt der Raspberry Pi damit, das Root-Filesystem – also
das Dateisystem mit dem Betriebssystem, das sich auf der SD-Karte befindet – auf die
gesamte SD-Kartengröße auszubreiten. Durch die Raspbian-Wheezy-Installation werden ansonsten immer nur 2 GB der Karte genutzt, egal, wie groß die Karte ist.
Abbildung 2.22 Das Hauptfenster des Menüs »raspi-config«
Dieses Menü erscheint immer, wenn das Betriebssystem Raspbian Wheezy zum ersten
Mal von der SD-Karte gestartet wird. Es soll dabei helfen, den Raspberry Pi für die erste
Benutzung zu konfigurieren, und deswegen gehen wir das Menü Schritt für Schritt
durch.
38
Abbildung 2.23 Das Dateisystem wird an die Größe der SD-Karte angepasst.
Nachdem der Vorgang (siehe Abbildung 2.23) abgeschlossen ist, bestätigen Sie mit
einem Tastendruck auf (¢) und gelangen wieder zum Menü zurück. Einen Reboot
ersparen wir uns erst einmal, da wir noch andere Einstellungen ändern werden.
39
2
2
Schnellstart: Die erste Inbetriebnahme
2.5
Ich bin so weit ... Jetzt geht’s los! Das System richtig konfigurieren
In Kapitel 4, »Wichtige Konsolenbefehle im Griff«, werden Sie eine Möglichkeit kennenlernen, eine Partition zu erstellen und so den ungenutzten Speicherplatz in eine Partition umzuwandeln. So wird der freie Speicher nicht verschwendet. Darum können Sie
diesen Schritt bei Bedarf auslassen.
2
2.5.3 »Change User Password«
Im nächsten Schritt ändern wir das Default-Passwort. Auf dem Raspberry Pi ist nach der
Installation ein User pi eingerichtet, dem das Passwort »raspberry« zugewiesen ist. Dieses Passwort ändern Sie nun in ein beliebiges anderes.
Achtung bei der Anmeldung: Amerikanische Tastenbelegung
Im Moment ist die Tastatur noch auf ein amerikanisches Layout eingestellt. Daher sind
z.B. die Tasten (Y) und (Z) vertauscht. Das bedeutet konkret, dass Sie bis zur Umstellung der Tastatur auf das deutsche Tastaturlayout (siehe Abschnitt 2.5.5, »›Internationalisation Options‹«) als Passwort »raspberrz« eintippen müssen.
Abbildung 2.25 Änderung erfolgreich
2.5.4 »Enable Boot to Desktop/Scratch«
In diesem Menüpunkt können Sie zwischen verschiedenen Bootoptionen wählen (siehe
Abbildung 2.26).
Sobald Sie den Menüpunkt ausgewählt haben, gelangen Sie wie in Abbildung 2.24
gezeigt zurück zur Konsole, wo Sie das neue Passwort eingeben.
Abbildung 2.24 Bitte ein neues Passwort eingeben.
Abbildung 2.26 Soll der Desktop automatisch gestartet werden?
Konsole, Terminal, Kommandos und Prompt
Die sogenannte Konsole ist, wie Sie vermutlich bereits bemerkt haben, ein Bildschirm im
Textmodus, in dem Sie mithilfe von Kommandos u.a. das System steuern, Dateien
ändern oder Ausgaben des Systems verfolgen können. Die Konsole gibt es auch in Form
eines Fensters in einer grafischen Benutzeroberfläche. Dort wird sie als Terminal
bezeichnet. Kommandos wie z. B sudo startx geben Sie an der Eingabeaufforderung,
dem sogenannten Prompt, ein; damit Sie die Befehle als solche erkennen, werden sie
wie üblich auch in diesem Buch in einer eigenen Schriftart als Kommando gekennzeichnet.
Wenn Sie das Passwort erfolgreich geändert haben, erscheint das Fenster aus Abbildung
2.25, das Sie mit der Taste (¢) schließen.
40
Der erste Menüpunkt sorgt dafür, dass nach dem Booten eine Konsole geöffnet wird.
Dies ist die Standardeinstellung. Wenn Sie nach dem Booten direkt auf den Desktop
gelangen wollen, so müssen Sie den zweiten Punkt aktivieren. Dadurch müssen Sie den
Desktop nicht von Hand starten und ersparen sich das Arbeiten mit der Konsole. Diese
Option ist nur sinnvoll, wenn Sie den Raspberry Pi mit einem Monitor ausgestattet
haben. Sie werden in Abschnitt 4.7, »Fernzugriff über SSH«, noch eine Möglichkeit kennenlernen, ohne Monitor (gerne auch als headless bezeichnet) auf dem Raspberry Pi zu
arbeiten; darum brauchen wir diese Option nicht zwingend. Der letzte Punkt aktiviert
zusätzlich zum Desktop noch die Programmierumgebung Scratch. Diese Programmier-
41
2
Schnellstart: Die erste Inbetriebnahme
umgebung werden Sie in Kapitel 3, »Den Desktop kennenlernen« noch etwas genauer
vorgestellt bekommen.
2.5.5 »Internationalisation Options«
2.5
Ich bin so weit ... Jetzt geht’s los! Das System richtig konfigurieren
Die Eingabe in diesem und in dem nächsten Fenster bestätigen Sie mit (¢). Danach
gelangen Sie wieder zum Hauptbildschirm, wo Sie erneut das Menü Internationalisation Options auswählen, um die Zeitzone einzustellen. Hierfür rufen Sie Change
Timezone auf, wählen dann Europe und anschließend Berlin (siehe Abbildung 2.29).
Hier sind alle länderspezifischen Einstellungen aufgeführt. Durch Drücken der (¢)Taste öffnen Sie ein Untermenü, das Sie in Abbildung 2.27 sehen.
Abbildung 2.29 Einstellen der Zeitzone
Abbildung 2.27 Das Untermenü im Überblick
Mit dem ersten Unterpunkt legen Sie den verwendeten Zeichensatz fest. Dafür öffnen
Sie das Menü und wählen die in Abbildung 2.28 markierte Option de_DE.UTF-8 UTF-8
mit der Leertaste aus.
Im letzten Schritt passen Sie das Tastaturlayout an. Hierfür wechseln Sie erneut in das
Menü Internationalisation Options und wählen Change Keyboard Layout aus.
Jetzt müssen Sie einen Tastaturtyp auswählen. Entscheiden Sie sich für die markierte
Auswahl Generic 105-Key (Intl) PC (siehe Abbildung 2.30), und bestätigen Sie die Eingabe durch Drücken von (¢).
Abbildung 2.30 Auswahl der richtigen Tastatur
Abbildung 2.28 Die Auswahl des richtigen Zeichensatzes
42
43
2
2
Schnellstart: Die erste Inbetriebnahme
Danach rufen Sie erst Other und anschließend German auf. Im nächsten Schritt aus
Abbildung 2.31 wählen Sie erneut German aus. Bei den nächsten drei Menüfenstern
können Sie einfach die vorgegebene Auswahl übernehmen. Jetzt verfügt der Raspberry
Pi über ein deutsches Tastaturlayout, wie es auf jeder deutschen Tastatur zu sehen ist.
2.5
Ich bin so weit ... Jetzt geht’s los! Das System richtig konfigurieren
Falls der Prozessor zu heiß wird (z.B. weil er zusätzlich in einer warmen Umgebung
betrieben wird), kann er kaputtgehen. Daher ist es sinnvoll, mit Hilfe von Wärmeleitpaste einen Kühlkörper auf dem Prozessor zu befestigen, wenn Sie den Prozessor übertakten.
Um den Raspberry Pi zu übertakten, wählen Sie diesen Menüpunkt aus und bestätigen
die Warnung mit Ok. Anschließend wählen Sie die gewünschte Taktfrequenz (siehe
Abbildung 2.32); nach einem Reboot steht diese dem Raspberry Pi zur Verfügung.
Abbildung 2.31 Auswahl der richtigen Sprache
Abbildung 2.32 Wie schnell darf es denn bitte sein?
2.5.6 »Enable Camera«
2.5.9 »Advanced Options«
Dieser Menüpunkt dient dazu, ein angeschlossenes Raspberry-Pi-Kameramodul zu aktivieren. Im Moment benötigen wir ihn aber noch nicht. Wir kommen in Kapitel 7,
»Augen auf! Die Raspberry-Pi-Kamera einsetzen«, noch einmal auf diesen Punkt
zurück.
Dieser Menüpunkt bietet ein paar erweiterte Konfigurationsmöglichkeiten für den Raspberry Pi. Mit dem ersten Punkt können Sie einen Overscan aktivieren. Wenn der
Overscan aktiviert worden ist, wird ein etwas größeres Bild erzeugt, das nicht komplett
auf die sichtbare Fläche des Monitors passt. Dadurch stehen die unscharfen Ränder über
und werden vom Nutzer nicht wahrgenommen. Diese Technik wird vor allem bei analogen Röhrenmonitoren benutzt, wo die Röhren eine gewisse Toleranz aufweisen. Für
moderne Flachbildschirme, bei denen jede Bildzelle einzeln angesprochen werden kann
und somit keine unscharfen Ränder mehr entstehen, ist diese Maßnahme unnötig und
muss nicht aktiviert werden.
2.5.7 »Add to Rastrack«
Mit diesem Menüpunkt können Sie den Raspberry Pi in eine Datenbank eintragen,
wodurch Sie sehen, wer alles in der Nähe einen Raspberry Pi besitzt. Auch dieser Punkt
ist für uns nicht sonderlich wichtig.
2.5.8 »Overclock«
Durch diesen Menüpunkt können Sie den Raspberry Pi ganz einfach übertakten.
Dadurch sind Taktfrequenzen bis 1 GHz möglich, die auch offiziell freigegeben sind. Das
Übertakten erhöht die Verarbeitungsgeschwindigkeit des Prozessors. Dies beschleunigt
das Betriebssystem und sämtliche Anwendungen, sorgt aber dafür, dass der Prozessor
viel wärmer als im normalen Betrieb wird.
44
Mit dem zweiten Punkt können Sie den Hostnamen, sprich den Namen des Raspberry
Pi, verändern. Hierfür können Sie jeden beliebigen Namen wählen, der keine Sonderzeichen enthält. Der neue Name steht nach einem Reboot zur Verfügung (siehe Abbildung 2.33).
Der dritte Punkt verändert die RAM-Zuweisung von CPU (der Hauptprozessor – Central
Processing Unit) und GPU (der Grafikprozessor – Graphic Processing Unit), er legt also
fest, wie viel Arbeitsspeicher für die Grafikerzeugung reserviert wird. Der Rest ist dann
für die CPU reserviert. Für Sie reicht es erst einmal, wenn Sie den Default-Wert (128 MB)
verwenden.
45
2
Kapitel 4
Wichtige Konsolenbefehle im Griff
Jetzt, da Sie wissen, wie Sie den Desktop aufrufen und was Sie dort alles finden,
beschäftigen wir uns mit der Konsole – dem Herzstück eines Linux-Systems.
4
Nachdem Sie die Desktopumgebung kennengelernt haben, schenken wir der Konsole
ein bisschen mehr Aufmerksamkeit. Wenn Sie die ganze Zeit eine grafische Benutzeroberfläche benutzt haben und daran gewöhnt sind, werden Sie mit der Umstellung auf
eine textbasierte Bedienung am Anfang vielleicht ein paar Probleme haben.
Sobald aber etwas Übung da ist, werden Sie feststellen, dass dadurch die Übersicht über
die ablaufenden Prozesse deutlich besser ist als bei einer grafischen Oberfläche. Mit
einer grafischen Oberfläche können viele Abläufe versteckt werden, aber wenn Sie über
eine Konsole direkt mit dem Kernel »reden«, bleibt Ihren Augen nicht viel verborgen,
und Sie wissen immer genau, was das System gerade tut.
Bevor Sie anfangen können, mit der Konsole zu arbeiten, müssen Sie erst einmal dort
hingelangen. Wenn Sie den Raspberry Pi booten, landen Sie wenige Momente später bei
einem Login-Bildschirm. Melden Sie sich dort an, können Sie direkt mit der Konsole
weiterarbeiten.
Abbildung 4.1 Ein neues Konsolenfenster
Aber was tun, wenn Sie bereits auf dem Desktop sind? Dann haben Sie zwei Möglichkeiten, zurück zur Konsole zu kommen:
69
4
Wichtige Konsolenbefehle im Griff
4.1
Anlegen eines neuen Benutzerkontos und Ändern des Passwortes
왘 Beenden Sie den Displaymanager (wie Sie das machen, lesen Sie in Abschnitt 3.1, »Wo
ist der Desktop überhaupt?«).
4.1 Anlegen eines neuen Benutzerkontos und Ändern des Passwortes
왘 Öffnen Sie das Programm LXTerminal.
Als Erstes beschäftigen wir uns damit, wie Sie einen neuen Benutzer anlegen und wie Sie
anschließend sein Passwort ändern. Wie Sie inzwischen wissen, existieren bereits zwei
Benutzer auf dem Raspberry Pi: der Benutzer pi und der Systemadministrator root.
Bei beiden Methoden erscheint anschließend der Bildschirm aus Abbildung 4.1 (hier
jetzt mit LXTerminal).
Übrigens: Die Konsole, die direkt nach dem Booten erscheint, unterscheidet sich nicht
vom LXTerminal, darum ist es egal, welche Konsole Sie verwenden.
Hintergrundfarbe der Konsole ändern
Zur besseren Lesbarkeit kann die Hintergrundfarbe der Konsole eingestellt werden. Ich
habe mich für einen hellgelben Hintergrund mit dunkler Schrift entschieden. Dazu klicken Sie einfach im Reiter der Konsole auf Edit 폷 Preferences. In dem sich öffnenden
Menü kann nun unter Background die Hintergrundfarbe angepasst werden.
Aber wofür benötigen Sie überhaupt mehrere Nutzer? In erster Linie sind mehrere Benutzer sinnvoll, wenn der Computer von mehreren Anwendern benutzt wird. Dadurch erreichen Sie, dass jeder Benutzer nur auf seine eigenen Daten zugreifen darf. Auf dem
Raspberry Pi haben die Benutzerkonten noch eine weitere Funktion: Bestimmte Dienste
legen einen neuen Benutzer an, über den sie dann arbeiten. Ein Beispiel ist der Webserver
apache oder lighttpd. Diese beiden Programme arbeiten mit dem User www-data. Der
Grund, wieso manche Dienste neue Benutzer anlegen, ist derselbe wie bei normalen
Benutzern: So wird sichergestellt, dass nur der Dienst selbst auf die Daten zugreifen darf;
zusätzlich können für jeden Benutzer die Zugriffsrechte individuell gesetzt werden.
So wird erreicht, dass Dienste nur auf die eigenen Dateien zugreifen dürfen, und es wird
verhindert, dass fremde Programme unerlaubt Dateien lesen. Außerdem werden auf
diese Weise Sicherheitslücken in den Anwendungen nicht direkt eine Gefahr für das
Betriebssystem, weil sich ein unerlaubter Zugriff nicht auf das komplette Betriebssystem ausbreiten kann. In der Datei /etc/passwd sind alle registrierten Benutzer aufgelistet und einsehbar (siehe Abbildung 4.3).
Abbildung 4.2 Zum Ändern der Farbe einfach verschiedene Werte für Red, Green und
Blue eingeben. Anschließend mit einem Klick auf OK die Eingabe bestätigen.
Abbildung 4.3 Alle Benutzer im Überblick
70
71
4
4
4.1
Wichtige Konsolenbefehle im Griff
In dieser Datei stehen auch noch einige Zusatzinformationen über die Benutzerkonten,
z.B. ob die Benutzer berechtigt sind, eine Shell (Kommandozeile) zu öffnen und darin zu
arbeiten.
Wie legen Sie nun aber einen neuen Benutzernamen an? Einen neuen Benutzer können
Sie nur über den Systemadministrator root anlegen. Im Moment sind Sie aber als Benutzer pi unterwegs, wie Sie in der Konsole erkennen, siehe Abbildung 4.4.
Anlegen eines neuen Benutzerkontos und Ändern des Passwortes
handen ist), werden Sie aufgefordert, ein neues Passwort einzugeben. Anschließend
müssen Sie die Eingabe wiederholen. Dies dient der Sicherheit, da auf diese Weise
Schreibfehler während der Passworteingabe vermieden werden können.
Groß- und Kleinschreibung beachten
4
Linux unterscheidet, im Gegensatz zu Windows, zwischen Groß- und Kleinschreibung
bei den Benutzernamen!
Wenn das Passwort erfolgreich geändert wurde, erscheint die Meldung aus Abbildung 4.6.
Abbildung 4.4 Der aktuelle Benutzer und der Hostname
Dabei gibt der Name vor dem @ den aktuellen Benutzernamen an und der Name dahinter den Namen des Raspberry Pi, wie Sie ihn in Kapitel 2, »Schnellstart: Die erste Inbetriebnahme«, über das Menü Hostname vergeben haben. Auf die Abbildung 4.4
bezogen heißt dies, dass der aktuelle Benutzer pi ist und der Raspberry Pi den Namen
RaspberryPi hat.
Um zum root-Account zu wechseln, geben Sie Folgendes in die Konsole ein:
sudo su
Der Befehl su (switchuser) ermöglicht das Wechseln zu einem anderen Benutzer. Wenn
nach dem Befehl su kein Benutzer angegeben wird, wechseln Sie automatisch zum
Benutzer root. (siehe Abbildung 4.5).
Abbildung 4.6 Das Passwort wurde erfolgreich geändert.
Für den Benutzer rootsollten Sie ein Passwort mit Sonderzeichen, Zahlen und Buchstaben wählen, um die maximale Sicherheit zu gewährleisten. Wer die Kontrolle über diesen Benutzer erlangt, hat die Kontrolle über das System!
Jetzt können Sie damit beginnen, ein neues Benutzerkonto anzulegen. Bei der Namensgebung müssen Sie allerdings ein paar Regeln einhalten:
왘 Der Name darf ausschließlich aus Kleinbuchstaben bestehen;
왘 als weitere Zeichen können auch die Zahlen 0 – 9, der Bindestrich (-) oder der Unterstrich (_) enthalten sein.
왘 Am Ende des Namens dürfen Sie ein $ einfügen.
왘 Jeder Name darf nur einmal vorhanden sein.
Abbildung 4.5 Der Wechsel war erfolgreich.
Bevor Sie weitermachen, legen Sie ein Passwort für dieses Konto fest. Um das Passwort
des aktuellen Benutzers zu ändern, geben Sie den Befehl
passwd
in die Konsole ein. Normalerweise erscheint als Nächstes eine Abfrage nach dem aktuellen Passwort. Da der Benutzer root aber bisher noch über kein Passwort verfügt, entfällt
diese. Wenn Sie das aktuelle Passwort erfolgreich eingegeben haben (sofern eins vor-
72
Als Beispiel erstellen wir den Benutzer neueruser. Dieses Benutzerkonto dient nur als
Demonstration. Es soll später keinen wirklichen Zweck erfüllen, und wir werden es
daher am Ende des Abschnitts wieder löschen. Um das Benutzerkonto und das dazugehörige Homeverzeichnis zu erstellen, geben Sie den folgenden Befehl in die Konsole ein:
adduser neueruser
Im nächsten Schritt werden Sie aufgefordert, ein Passwort einzugeben, und danach werden Sie nach ein paar Benutzerinformationen gefragt, die allerdings nicht so wichtig
sind und die Sie ignorieren können. Überspringen Sie sie also nach und nach mit einem
Druck auf (¢), und bestätigen Sie am Ende mit (Y). Sobald Sie damit fertig sind, erhal-
73
4
4.1
Wichtige Konsolenbefehle im Griff
ten Sie eine Bestätigung vom Betriebssystem, dass das Benutzerkonto angelegt worden
ist, siehe Abbildung 4.7.
Anlegen eines neuen Benutzerkontos und Ändern des Passwortes
Anschließend versuchen Sie, mit dem Befehl
echo "Hallo" >> /home/pi/Desktop/Hallo.txt
den Text »Hallo« auf den Desktop in eine Datei Hallo.txt des Benutzers pi zu schreiben.
Keine Angst, den Befehl echo werde ich im Abschnitt 4.5, »Wie bearbeite ich Dateien?«
genauer erklären. Es erscheint nun die Meldung aus Abbildung 4.8.
Abbildung 4.8 Da fehlen wohl die Schreibrechte ...
Abbildung 4.7 Ein neuer Benutzer wurde angelegt.
In dem Moment, als der Benutzer angelegt wurde, sind drei Dinge passiert:
Wie ist diese Meldung zu deuten? Mit dem Befehl haben Sie versucht, einen Text in eine Datei auf dem Desktop eines anderen Benutzers zu schreiben. Da der Benutzer neueruser und
der Benutzer pi, auf dessen Desktop Sie schreiben wollten, in unterschiedlichen Gruppen
sind, besitzt der User neueruser keine Rechte, auf dessen Desktop zu schreiben. Wir wollen
aber nicht, dass der Benutzer solch eingeschränkte Rechte hat. Deswegen weisen wir den
Benutzer einer Gruppe zu. Als Erstes müssen wir wieder zum Benutzer root wechseln:
왘 Der Benutzer neueruser wurde erstellt.
왘 Die Hauptgruppe neueruser des Benutzers wurde angelegt.
왘 Das Homeverzeichnis /home/neueruser wurde erzeugt und eingerichtet.
Dies hat den Zweck, dass alle Dateien, die im Homeverzeichnis des Benutzers neueruser
gespeichert werden, eindeutig diesem Benutzer zugewiesen werden können. Dadurch
wird gewährleistet, dass nur der Benutzer neueruser auf seine Dateien zugreifen darf,
während er selbst auf keine anderen Dateien zugreifen darf, weil er in keiner weiteren
Gruppe ist, die Zugriff auf andere Dateien hat. Schauen wir uns dazu ein kleines Beispiel
an. Da Sie den Benutzer neueruser nun angelegt haben, wechseln Sie auf diesen Benutzer:
su root
In der Datei /etc/group sind alle bereits vorhandenen Gruppen aufgelistet. Diesen
Dateiinhalt können Sie mit dem Befehl
nano /etc/group
öffnen und sich anzeigen lassen (siehe Abbildung 4.9).
su neueruser
Ein Passwort brauchen Sie nicht einzugeben, da der User root ohne Passwort wechseln
darf. Hierbei sollten Sie beachten, dass Sie beim Wechseln des Benutzers durch den
Befehl su mit dem neuen Benutzer im selben Verzeichnis bleiben wie mit dem alten
Benutzer! Dies ist unter Umständen problematisch, da der neue Benutzer sich dann in
einem Verzeichnis aufhalten könnte, wo er keine Rechte besitzt (das sehen Sie deutlich in Abbildung 4.8: Der Benutzer neueruser befindet sich im Homeverzeichnis des
Benutzers pi).
Abbildung 4.9 Alle Gruppen in der Übersicht
74
75
4
4
4.2
Wichtige Konsolenbefehle im Griff
Mit der Tastenkombination (Strg) + (X) schließen Sie die Datei anschließend wieder.
Der Einfachheit halber fügen wir den Benutzer neueruser derselben Gruppe wie den
Benutzer pi hinzu. Dadurch haben beide Benutzer auf dieselben Dateien Zugriffsrechte.
Um einen Benutzer einer Gruppe zuzuweisen, verwenden Sie den Befehl usermod. Das
folgende Beispiel fügt den Benutzer neueruser zusätzlich der Gruppe pi hinzu:
Wie ist das Dateisystem aufgebaut?
Anschließend versuchen wir erneut, die Textdatei zu beschreiben:
echo "Hallo" >> /home/pi/Desktop/Hallo.txt
Wenn alles erfolgreich war, sollte das Ergebnis so wie in Abbildung 4.10 aussehen.
4
usermod -a -G pi neueruser
Dabei sind die Parameter -a und -G die Optionen, um den Benutzer einer Gruppe (hier
pi) hinzuzufügen, ohne ihn dabei aus den anderen Gruppen zu entfernen. Für diese
Funktion müssen Sie die Parameter -a und –G immer zusammen angeben! Der Parameter –G teilt dem Betriebssystem mit, dass der Benutzer zusätzlich zu seiner Initialgruppe
einer Liste von Gruppen zugewiesen werden soll. In dem obigen Beispiel besteht die
Liste von Gruppen nur aus der Gruppe pi. Vergessen Sie dabei den Parameter –a, wird
der Benutzer anschließend aus allen anderen Gruppen entfernt!
Jetzt müssen Sie noch das Homeverzeichnis des Benutzers pi für Gruppenmitglieder
beschreibbar machen. Dies geschieht mit dem folgenden Befehl:
chmod -R g+w /home/pi
Mit Hilfe des Befehls chmod werden die Zugriffsrechte des angegebenen Verzeichnisses
oder der angegebenen Datei (in diesem Beispiel /home/pi) geändert. Das -R ist ein
Befehlsparameter und gibt an, dass auch alle Unterverzeichnisse einbezogen werden
sollen, weil sonst nur der Ordner /home/pi neue Schreibrechte bekommt, aber nicht der
Ordner /home/pi/Desktop. Mit dem g wird dabei signalisiert, dass es sich um die Gruppenzugriffsrechte handelt, und das +w besagt, dass die Berechtigung zum Schreiben (w)
hinzugefügt werden soll. Mit dem Parameter –w würden die Schreibrechte wieder entfernt.
Aber warum haben wir das nicht beim ersten Versuch für alle Benutzer gemacht? Der
Grund ist ganz einfach: Wenn wir bei dem Verzeichnis das Schreibbit für die öffentliche
Berechtigung setzen, können wir nicht mehr kontrollieren, wer alles in das Verzeichnis
schreibt. Aus diesem Grund weisen wir nur der Gruppe eine Schreibberechtigung zu, da
ihr ja nicht jeder Benutzer angehört.
Schauen wir mal, ob die Änderungen das Problem gelöst haben ... Hierfür wechseln wir
wieder zum Benutzer neueruser:
su neueruser
76
Abbildung 4.10 Alles hat geklappt.
Lassen Sie mich kurz zusammenfassen, was Sie eben gelernt haben:
왘 Mit dem Befehl adduser legen Sie einen neuen Benutzer an.
왘 Der Befehl passwd dient zum Ändern des Passwortes.
왘 Mittels su wechseln Sie zwischen verschiedenen Benutzern.
왘 Mit dem Befehl usermod -a -G fügen Sie einen Benutzer einer Gruppe hinzu.
왘 Der Befehl chmod ändert die Zugriffsrechte eines Verzeichnisses oder einer Datei.
Wer den Benutzer neueruser nicht weiterverwenden will, kann diesen mithilfe von
deluser neueruser ganz einfach wieder löschen. Damit Sie diesen Befehl benutzen kön-
nen, müssen Sie aber als Benutzer root angemeldet sein.
4.2 Wie ist das Dateisystem aufgebaut?
In Kapitel 2, »Schnellstart: Die erste Inbetriebnahme«, haben wir uns bereits mit dem
Verzeichnisbaum des Betriebssystems beschäftigt, und Sie wissen nun, wie das
Betriebssystem grob aufgebaut ist. In diesem Abschnitt beschreibe ich die Art und
Weise, wie das Betriebssystem die Daten ablegt, etwas genauer. Zudem werden wir uns
das Thema Speichererweiterung per USB-Stick/USB-Festplatte und die Formatierung
dieser Speichermedien ansehen.
Aber wie genau speichert ein Computer eigentlich Daten? Alle Daten, die ein Computer
speichern und/oder verarbeiten soll, werden in sogenannten Bits gespeichert. Ein Bit
kann dabei entweder gesetzt sein (1) oder nicht gesetzt sein (0). Alle Informationen in
einem Computer werden also in Bits umgewandelt. Ein Bit können Sie sich vereinfacht
wie einen Schalter vorstellen: Ist der Schalter umgelegt, ist das Bit gesetzt. Jeder der
Schalter steht dann für eine bestimmte Information.
77
4
Wichtige Konsolenbefehle im Griff
Natürlich ist es etwas unhandlich, zu sagen: »Meine Festplatte besitzt 8.388.608 Bits
Speicherkapazität«. Aus diesem Grund werden die Bits in Pakete »verpackt«. 8 Bits ergeben 1 Byte, 1.024 Bytes ergeben 1 Kilobyte (kB) etc. Nachfolgend sehen Sie in Tabelle 4.1
eine kleine Auflistung der Paketgrößen:
Name
Größe
1 Byte
8 Bit
1 Kilobyte (kB)
1.024 Byte
1 Megabyte (MB)
1.024 Kilobyte
1 Gigabyte (GB)
1.024 Megabyte
1 Terabyte (TB)
1.024 Gigabyte
1 Petabyte (PB)
1.024 Terabyte
Tabelle 4.1 Eine kurze Übersicht der Bytegrößen
Jetzt sind natürlich nicht alle Daten wild auf dem Speichermedium verteilt, vielmehr
sind sie alle schön geordnet abgespeichert, so dass der Computer sie möglichst schnell
findet. Diese Ordnung der Daten nennt sich Dateisystem. Ein Computer kann viele verschiedene Dateisysteme verwenden, die alle unterschiedliche Vor- und Nachteile
haben. Diese hier aufzuzählen und zu beschreiben, würde den Rahmen des Buches
sprengen. Für die Benutzung des Raspberry Pi reicht es zu wissen, dass das Dateisystem
auf der SD-Karte ein ext-Dateisystem ist. Dieses Dateisystem unterscheidet sich in zwei
wichtigen Punkten vom NTFS-Dateisystem eines Windows-Computers:
왘 Ein NTFS-Dateisystem ist nicht in der Lage, die Rechteverwaltung eines LinuxSystems zu unterstützen.
왘 Der Aufbau der Dateisysteme ist unterschiedlich. Ein NTFS-Dateisystem verwendet
Laufwerksbuchstaben wie z.B. C:\, die einen bestimmten Bereich im Speichermedium darstellen. Ein ext-Dateisystem verwendet einen durchgehenden Verzeichnisbaum, wie Sie ihn bereits in Abschnitt 2.3 kennengelernt haben.
Das Schöne an einem Linux-Betriebssystem ist, dass es so gut wie jeden Dateisystemtyp
unterstützt. So können Sie problemlos ein Speichermedium mit dem Windows-Dateisystem NTFS an ein Linux-System anschließen und nutzen. Andersherum ist dies leider
nicht so einfach möglich.
Nach diesem groben Überblick über das Speichern der Daten auf der SD-Karte schauen
wir uns das Ganze nun genauer an. Dafür öffnen Sie ein Konsolenfenster und melden
78
4.2
Wie ist das Dateisystem aufgebaut?
sich als Benutzer root an. Jetzt schauen wir uns mit dem Befehl df die Speicherbelegung
ein wenig genauer an: df –h
Der Parameter –h sorgt dafür, dass die Speicherbelegung in einem für den Menschen
lesbaren Format ausgegeben wird (siehe Abbildung 4.11).
4
Abbildung 4.11 Der Aufbau des Dateisystems des Raspberry Pi
Aber was sehen wir jetzt genau? Dieser Befehl gibt die komplette Speicherverteilung im
Dateisystem wieder. Außerdem gibt er ein paar nützliche Informationen über den
belegten und den freien Speicherplatz aller Speichermedien aus.
Die erste Spalte gibt den Speicher an, die zweite die Gesamtgröße des Speichers, die
Spalten drei bis fünf geben ein paar Informationen über die Speicherbelegung, und die
letzte Spalte besagt, an welchem Punkt der Speicher gemountet oder auch eingehängt
ist. Schauen wir uns dies anhand der ersten Zeile genauer an:
왘 In der ersten Spalte Filesystem sehen Sie, dass es sich bei dem Dateisystem um das
rootfs handelt, das beim Booten als Erstes geladen wird. Dieses Dateisystem enthält
das Betriebssystem und befindet sich immer auf der ersten Partition des Datenträgers (Partition 0). Etwas Ähnliches findet sich auch auf jedem Windows-Rechner –
dort ist es die Partition C:\, die das Betriebssystem enthält.
왘 Die zweite Spalte Size gibt die Gesamtgröße des Dateisystems an. In dem Beispiel
beträgt die Größe 7,1 GB, was in etwa die Größe der SD-Karte ist. Dies ist auch logisch,
da beim Aufspielen des Images nur zwei Partitionen angelegt werden: Einmal das
rootfs und dann die Bootpartition. Da die Bootpartition immer eine Größe von 56 MB
besitzt, wird der komplette restliche Speicher dem rootfs zugeschrieben.
왘 Die Spalten drei bis fünf geben die Auslastung des Dateisystems wieder, wobei die
Spalte drei Used angibt, wie viel des Gesamtspeicherplatzes bereits genutzt wird. In
Spalte vier Avail erfahren Sie den verbleibenden Speicherplatz, und in Spalte fünf
Use% lesen Sie den belegten Speicher als Prozentzahl ab. Auf die oben gezeigte SDKarte übertragen bedeutet dies, dass 3,5 GB belegt und 3,4 GB frei sind. Das ergibt eine
Speicherbelegung von 51 %.
79
4
4.2
Wichtige Konsolenbefehle im Griff
Wie ist das Dateisystem aufgebaut?
왘 Die letzte Spalte Mounted on zeigt den Mountpunkt des Dateisystems an. Damit
unter einem Linux-System ein Speichermedium wie ein USB-Stick, eine SD-Karte
oder eine Festplatte genutzt werden kann, muss dieses gemountet werden. Das
Mounten ist ein Vorgang, bei dem der Datenträger dem Betriebssystem verfügbar
gemacht wird – an einem bestimmten Punkt bzw. einem bestimmten Pfad im Dateisystem wird ein Link auf diesen Speicher angelegt. So gelangen Sie durch diesen Link
auf das Speichermedium. Wir werden uns im Laufe dieses Abschnitts noch mit dem
Einbinden eines USB-Sticks an den Raspberry Pi beschäftigen. Dort werde ich das
Thema Mounten noch etwas genauer erklären.
Dasselbe finden wir bei der Ausgabe des Befehls df –h wieder, allerdings erscheint dort
die Anzeige aus Abbildung 4.13.
Natürlich möchte man nicht alle Daten im rootfs speichern. Aus diesem Grund erstellen
wir jetzt eine neue Partition auf einem externen Datenträger.
Am Namen mmcblk erkennen Sie, dass es sich bei dem Gerät um eine Speicherkarte
handeln muss. Die 0 weist darauf hin, dass es sich um die erste Speicherkarte im System
handelt, und das p1 steht für die zweite Partition auf dem Datenträger. Diese Partition
hat eine Größe von 56 MB, wovon 9,5 MB oder 17 % belegt sind. Bei dieser Partition handelt es sich um die Bootpartition, die auch am Windows-Rechner erkannt wird, wenn
die SD-Karte in den Kartenleser geschoben wird. Diese Partition enthält alle Dateien, die
für das Starten des Betriebssystems notwendig sind.
Aber vorab ein paar Worte zu den Partitionsnamen unter Linux. Jeder Datenträger
bekommt unter Linux einen Namen. Speicherkarten werden meist mit mmcblk oder
mmc, USB-Sticks mit sda und Festplatten mit hd gekennzeichnet. Wird ein Datenträger
angeschlossen, wird er im Verzeichnis /dev aufgelistet und anschließend mit dem
Zusatzbuchstaben a versehen (Speicherkarten mit der Zahl 0). Alle weiteren Speicher
gleichen Typs werden fortlaufend benannt. Anschließend folgt eine Zahl, bzw. ein p[x]
bei Speicherkarten, für die verschiedenen Partitionen auf dem Speicher. Bei einer Partition handelt es sich um einen Teilbereich des Gesamtspeichers. Die Größe einer Partition können Sie festlegen, so dass zwei Partitionen nicht immer gleich groß sein
müssen. So ist es z.B. theoretisch möglich, eine 20-GB-Festplatte mit drei Partitionen
auszustatten, wovon eine Partition 15 GB groß, die andere 2 GB und die dritte 3 GB groß
ist (natürlich sind solch kleine Festplatten heute gar nicht mehr zu bekommen).
Schauen wir uns dies mit Hilfe der Abbildung 4.12 an. Hier habe ich zwei USB-Sticks, die
ich vorher an einem Windows-Rechner formatiert habe, an die beiden USB-Ports meines Raspberry Pi gesteckt. Der erste Stick wurde mit sda und der zweite Stick mit sdb
bezeichnet. Da jeder Stick eine Partition besitzt, wird diese Partition mit einer 1 gekennzeichnet. Es erscheinen im Verzeichnis /dev also einmal die kompletten USB-Sticks (sda
und sdb) und einmal die Partitionen auf den USB-Sticks (sda1 und sdb1).
4
Abbildung 4.13 Um was für einen Datenträger handelt es sich?
Mit Hilfe des eben Gelernten sind Sie in der Lage, diese Zeile zu übersetzen. Versuchen
Sie es einmal. Welche Informationen können Sie aus dieser Zeile herauslesen? Die
Lösung dazu werde ich Ihnen im Folgenden präsentieren.
Zurück zu unserem Vorhaben, eine neue Partition zu erstellen. Da Sie nun wissen, wie
Speichermedien unter Linux benannt werden, sind Sie in der Lage, unser Vorhaben in
die Tat umzusetzen. Verwenden wir als externen Datenträger einen USB-Stick. Diesen
stecken Sie in einen der beiden USB-Ports. Anschließend schauen Sie nach, wie der USBStick benannt wurde. Hierfür geben Sie ls /dev in die Konsole ein und suchen nach
einem Gerät namens sda o. Ä. (wie Sie es oben in Abbildung 4.12 erkennen). Da Sie den
Namen des Sticks nun kennen, können Sie auf ihm eine neue Partition erstellen. Für die
Erstellung einer neuen Partition verwenden Sie das Tool fdisk, das Sie für die Partitionierung des USB-Sticks folgendermaßen aufrufen:
fdisk /dev/sda
Nach dem Aufruf fragt das Tool nach dem nächsten Schritt, was Abbildung 4.14 zeigt.
Abbildung 4.14 Was soll gemacht werden?
Abbildung 4.12 Die beiden USB-Sticks im Verzeichnis »/dev«
80
Falls auf dem Stick bereits eine Partition vorhanden sein sollte, sprich, wenn ein Gerät
namens sda1 vorhanden ist, löschen wir sie erst einmal, da sonst wahrscheinlich keine
81
4
4.2
Wichtige Konsolenbefehle im Griff
neue Partition erstellt werden kann. Eine Partition löschen Sie, indem Sie als Befehl erst
ein d und dann die Partitionsnummer, also die 1, eingeben (siehe Abbildung 4.15).
Wie ist das Dateisystem aufgebaut?
cat /sys/block/mmcblk0/queue/hw_sector_size
Dieser Wert wird in den meisten Fällen 512 betragen, sprich, ein Sektor ist 512 Byte groß.
Dies ist durch die Verwendung einer SD-Karte gegeben. Sollte der Wert jedoch nicht 512
betragen, so müssen Sie dies in der folgenden Berechnung berücksichtigen. Wenn nun
eine 1 GB große Partition erstellt werden soll, benötigen Sie also wie viele Sektoren?
1 GB = 1.024 MB = 1.024 * 1.024 kB = 1.024 * 1.024 * 1.024 Byte = 1.073.741.824 Byte
1.073.741.824 Byte / 512 Byte Sektorgröße = 2.097.152 Sektoren
Abbildung 4.15 Die Partition wird gelöscht.
Achtung!
Wenn die Partition gelöscht wird, werden alle gespeicherten Daten mit gelöscht!
Sie schließen das Löschen ab durch die Eingabe von w. Anschließend beginnen Sie mit
dem Anlegen einer Partition. Hierfür rufen Sie das Tool fdisk erneut auf. Um eine neue
Partition anzulegen, geben Sie ein n ein und signalisieren anschließend mit p, dass eine
primäre Partition angelegt werden soll. Abbildung 4.16 zeigt dies.
Diesen Wert geben Sie nun als Endsektor ein. Anschließend müssen die Informationen
geschrieben werden. Hierfür geben Sie einfach den Befehl w in die Konsole ein, siehe
Abbildung 4.17.
Jetzt ist die Partition zwar erstellt, aber sie verfügt noch über kein Dateisystem. Deswegen muss sie noch formatiert werden. Es empfiehlt sich, für den Datenträger dasselbe
Dateisystem wie auf der SD-Karte zu verwenden, also ext3. Um den USB-Stick zu formatieren, geben Sie folgenden Befehl ein:
mkfs -t ext3 /dev/sda1
Abbildung 4.16 Eine neue Partition wird angelegt.
Geben Sie jetzt eine Partitionsnummer ein. Da in diesem Beispiel noch keine Partition
vorhanden ist, wähle ich Partition 1 aus. Alternativ können Sie auch mit einem Druck
auf (¢) den Default-Wert, also den Standardwert, verwenden. Der nächste Schritt
besteht in der Definition des Startsektors der Partition.
Ein Speicher ist in viele kleine und gleich große Teilbereiche aufgeteilt, die sich Sektor
nennen. Für den Startsektor verwenden Sie den Default-Wert. Danach bestimmen Sie
den Endsektor. Über die Angaben der Start- und Endsektoren bestimmen Sie die Größe
der Partition.
Unter Linux lässt sich die Sektorgröße wie folgt auslesen:
82
Abbildung 4.17 Die neue Partition wurde angelegt.
Die Formatierung dauert nicht allzu lange, und am Ende erscheint der Text aus Abbildung 4.18. Jetzt können Sie den USB-Stick nutzen. Dafür müssen Sie ihn mounten. Zum
Mounten eines Speichermediums dient der Befehl mount; als Parameter geben Sie den
Datenträger an und den Zielort, an den er gemountet werden soll:
mount /dev/sda1 /mnt
83
4
4
4.2
Wichtige Konsolenbefehle im Griff
Wie ist das Dateisystem aufgebaut?
umount /mnt
Jetzt warten Sie, bis das Betriebssystem den Stick entmountet hat. Sobald das Betriebssystem damit fertig ist, erscheint der Konsolenpromt wieder und Sie können den Stick
gefahrlos abziehen.
Falls Sie am Anfang das Dateisystem nicht über das Menü raspi-config ausgedehnt und
damit den ersten Schritt übersprungen haben, so können Sie auf dieselbe Weise den
restlichen Platz auf der SD-Karte in einer Partition unterbringen. Hierfür müssen Sie
allerdings erst den Endsektor der letzten Partition herausfinden. Dies geschieht mit
dem Befehl:
fdisk -l -u /dev/mmcblk0
Abbildung 4.18 Die Formatierung ist abgeschlossen.
Nun wird der Stick in das Verzeichnis /mnt gemountet. Aber was heißt das jetzt genau?
Beim Mountvorgang wird der USB-Stick mit dem Verzeichnis /mnt verlinkt, was bedeutet, dass das Verzeichnis /mnt den genauen Inhalt des USB-Sticks beinhaltet. Allerdings
werden die Dateien nur symbolisch angezeigt und beinhalten lediglich eine Weiterführung auf die Originaldateien auf dem USB-Stick. Das Verzeichnis /mnt dient als eine Art
Weiterleitung auf den USB-Stick.
Nachdem wir den Stick gemountet haben, lassen wir uns die Speicherbelegung wie in
Abbildung 4.19 anzeigen.
Die Ausgabe sieht dann so aus wie in Abbildung 4.20.
Abbildung 4.20 Der Endsektor der zweiten Partition
Die markierte Sektorgröße + 1 ergibt dann den Startsektor der neuen Partition (siehe
Abbildung 4.21).
Abbildung 4.19 Die Partition ist einsatzbereit.
Bevor Sie den USB-Stick entfernen, ist es ratsam, den Mountpunkt zu entfernen, um
keine Fehler im Dateisystem des USB-Sticks zu erzeugen. Denn wenn das Betriebssystem gerade noch damit beschäftigt sein sollte, Daten auf den Stick zu schreiben, dann
kann es passieren, dass diese Daten nicht korrekt abgespeichert beziehungsweise
beschädigt werden. Um den Stick zu entmounten, wird der Befehl umount verwendet:
84
Abbildung 4.21 Auf der SD-Karte wird eine neue Partition erstellt.
85
4
4
4.3
Wichtige Konsolenbefehle im Griff
Jetzt müssen Sie die Partition noch formatieren. Dies geschieht auf die gleiche Weise
Installieren neuer Software via Konsole
4.3 Installieren neuer Software via Konsole
wie bei dem USB-Stick, nur dass Sie als Gerät jetzt /dev/mmcblk0p3 angeben statt /dev/
sda1. Je nach Größe der Partition dauert dieser Vorgang natürlich etwas länger als bei
dem USB-Stick.
Natürlich wäre es ziemlich unklug, wenn jede Partition bei einem Neustart des Rechners
neu gemountet werden soll. Deswegen automatisieren wir diesen Vorgang, indem wir
mit dem Befehl nano /etc/fstab die Datei /etc/fstab öffnen, die für das automatische
Mounten von Datenträgern zuständig ist. Anschließend passen Sie die Datei so an wie
in Abbildung 4.22.
Abbildung 4.22 So sieht die Änderung aus.
Den Mountpunkt /mnt können Sie natürlich beliebig wählen. Nach einem Reboot steht
die Partition dann zur Verfügung und taucht bei der Übersicht durch den Befehl df –h
auf.
Früher oder später gelangt jeder Benutzer an einen Punkt, an dem er neue Software
benötigt, um weiterarbeiten zu können, z.B. einen Webserver. Sie sind in Kapitel 3, »Den
Desktop kennenlernen«, zwar bereits dem Raspberry-Pi-Store begegnet, aber dieser ist
mit einer grafischen Oberfläche verknüpft, was eine Benutzung in der Konsole nicht
möglich macht. Zudem stellt der Raspberry-Pi-Store nur Software zur Verfügung, die für
den Raspberry Pi entwickelt wurde. Was also tun, wenn Sie eine allgemeine Linux-Software benötigen?
Für diesen Anwendungsfall gibt es im Debian-Betriebssystem, von dem das Betriebssystem Raspbian Wheezy abstammt, ein Tool namens Advanced Packaging Tool oder kurz
APT. Mit Hilfe dieses Tools ist es möglich, neue Software, in Form sogenannter Pakete,
aus dem Internet herunterzuladen und zu installieren. All dies geschieht vollautomatisch und ohne das Zutun einer grafischen Oberfläche.
Wenn Sie sich in Kapitel 3 das Startmenü genauer angeschaut haben, dann werden Sie
festgestellt haben, dass es unter Other einen Programmeintrag namens Aptitude
Package Manager (text) gibt (siehe Abbildung 4.23).
Ich fasse abschließend noch einmal zusammen, was Sie in diesem Abschnitt gelernt
haben:
왘 Mit dem Befehl df –h lässt sich die Speicherbelegung aller Datenträger anzeigen.
왘 Massenspeicher werden im Verzeichnis /dev aufgeführt, und zwar mit einem fortlaufenden Buchstaben für jedes Gerät gleichen Typs. Jedes Gerät erscheint als Komplettgerät, zusätzlich erscheint jede Partition des Gerätes und wird fortlaufend
nummeriert.
왘 Mit dem Befehl fdisk lassen sich Partitionen auf einem beliebigen Datenträger
erstellen und löschen.
왘 Mit dem Befehl mkfs formatieren Sie Datenträger.
왘 Der Speicher eines Datenträgers wird in Sektoren einer bestimmten Größe unterteilt.
Eine bestimmte Anzahl an Sektoren definiert eine Partition mit einer bestimmten
Größe. Eine Partition ist dabei eine Unterteilung des Gesamtspeichers in einen definierten Teilbereich.
왘 Massenspeicher werden mit dem Befehl mount an einem bestimmten Punkt eingebunden und verfügbar gemacht.
86
Abbildung 4.23 Die grafische Version des Tools APT
Die Benutzung des Tools auf der grafischen Oberfläche ist ziemlich selbsterklärend,
wenn Sie die Benutzung der konsolenbasierten Version verstanden haben. Am Ende des
Abschnitts werde ich aber trotzdem noch einmal kurz auf die grafische Version eingehen, um den Abschnitt abzurunden.
Das Tool APT bietet nicht nur die Möglichkeit, Pakete zu installieren, sondern mit diesem Tool können Sie ein Paket auch wieder deinstallieren sowie Updates installieren.
Da dieses Tool Software installiert, benötigt es root-Rechte. Öffnen Sie als Erstes ein
Konsolenfenster, und melden Sie sich dann wieder als Benutzer root an.
87
4
4
4.3
Wichtige Konsolenbefehle im Griff
Wir beginnen mit der Installation eines kleinen Tools, das immer wieder nützlich ist,
um Textdateien o. Ä. die von einem Windows-Rechner stammen, in ein auf einem
Linux-Rechner lesbares Format umzuwandeln. Dieses Programm heißt dos2unix.
Rufen Sie das Tool APT mit folgendem Befehl auf:
apt-get
Als Nächstes erwartet das Tool einen Parameter, der ihm sagt, was es tun soll. APT ist sehr
mächtig, und falls Sie einmal nicht weiter wissen, können Sie sich die möglichen Befehle
durch die Eingabe von apt-get in der Konsole anzeigen lassen (siehe Abbildung 4.24).
Installieren neuer Software via Konsole
Namen ein »vi« enthalten. Dabei lautet der Name, den ich für die Installation benötige,
einfach »vim« ... Sie sehen, dass Sie viel schneller zum Ziel kommen, wenn Sie eine Suchmaschine wie Google verwenden und nach etwas suchen wie: »Linux Editor vi installieren«. Für unsere Installation lautet der Name ganz einfach dos2unix. Der komplette
Befehl sieht dann so aus:
apt-get install dos2unix
Nach Drücken der Taste (¢) erscheint das Konsolenbild aus Abbildung 4.25.
Abbildung 4.25 Das Paket »dos2unix« wird installiert.
Abbildung 4.24 Befehlsübersicht des Tools APT
In der Übersicht suchen Sie nun den Parameter für die Installation eines neuen Paketes
heraus. Um ein neues Paket zu installieren, benötigen Sie den Parameter install, so
dass der bisherige Aufruf
Bei vielen Programmen fragt das Betriebssystem zusätzlich nach, ob Sie das Programm
wirklich installieren wollen. Dabei handelt es sich um eine einfache Ja-Nein-Abfrage, die
Sie durch Drücken von (Y) bestätigen. Wenige Augenblicke später ist das Paket fertig
heruntergeladen und installiert, wie Sie in Abbildung 4.26 sehen.
apt-get install
lautet. Jetzt weiß das Tool aber noch nicht, was installiert werden soll. Also übergeben
Sie dem Tool einen Namen. Da der Name für das Tool nicht automatisch auch der Programmname ist, müssen Sie ihn suchen. Eine Möglichkeit ist der Befehl:
apt-cache search <Programmname>
Die Liste ist dann aber mehr oder weniger lang, und es ist nicht sonderlich effektiv, in
einer langen Liste nach dem richtigen Namen zu suchen. Ein kurzes Beispiel: Wenn ich
den Editor vi installieren möchte, kann ich als Programmnamen »vi« eingeben. Das
Ergebnis ist eine etwa 20 – 30 Seiten lange Liste mit allen Programmen, die in ihrem
88
Abbildung 4.26 Das Paket ist fertig installiert.
89
4
4
4.3
Wichtige Konsolenbefehle im Griff
Sollte einmal während der Installation etwas schiefgehen, sehen Sie dies direkt an der
Konsolenausgabe, weil eine Fehlermeldung ausgegeben wird. Beispielsweise sieht es
aus wie in Abbildung 4.27, wenn ich durch Drücken von (Strg) + (C) die Installation
abgebrochen habe.
Installieren neuer Software via Konsole
Wenn die Aktualisierung erfolgreich war, steht am Ende Reading package list...
Done, und Sie können mit dem Befehl
apt-get upgrade
4
den Aktualisierungsvorgang aller Pakete starten.
Abbildung 4.27 Die Installation wurde abgebrochen.
Jetzt kann es natürlich passieren, dass im Laufe der Zeit eine neue Version des Paketes
erscheint. Auch hier unterstützt Sie das Tool APT und bietet eine Möglichkeit, alle
Pakete ganz einfach zu aktualisieren. Bevor Sie aber die Pakete an sich aktualisieren, ist
es ratsam, erst die unter /etc/apt/sources.list gespeicherte Quelle zu aktualisieren.
Dadurch erhält das System die aktuellsten Informationen über die verfügbaren Pakete.
Um die Paketliste zu aktualisieren, geben Sie folgenden Befehl in die Konsole ein:
apt-get update
Jetzt beginnt das Betriebssystem damit, die Paketquellen wie in Abbildung 4.28 neu einzulesen.
Abbildung 4.29 Der Updatevorgang wird gestartet.
Bevor die eigentliche Aktualisierung beginnt, listet das Tool wie in Abbildung 4.30 alle
veralteten Pakete auf 1, zeigt an, wie viel zusätzlicher Speicherplatz für die Aktualisierung benötigt wird 2 und fragt abschließend, ob der Aktualisierungsvorgang wirklich
durchgeführt werden soll 3. Diese Frage bestätigen Sie durch Drücken von (Y), wodurch
der ganze Vorgang fortgesetzt wird.
Abbildung 4.28 Die Paketquellen werden neu eingelesen.
Abbildung 4.30 Der Updatevorgang wird fortgesetzt.
90
91
4
4.3
Wichtige Konsolenbefehle im Griff
Installieren neuer Software via Konsole
Jetzt beginnt das Tool damit, alle notwendigen Pakete herunterzuladen und zu installieren. Den Verlauf der Installation, den Abbildung 4.31 beispielhaft zeigt, können Sie dabei
über die Konsole verfolgen. Am Ende der Installation gelangen Sie zurück zur Konsoleneingabe.
4
Abbildung 4.32 Wirklich löschen?
Nachdem Sie diese Frage mit einem Druck auf (Y) bestätigt haben, beginnt das Betriebssystem mit dem Löschen der Dateien (siehe Abbildung 4.33).
Abbildung 4.31 Die Pakete werden heruntergeladen und installiert.
Jetzt kann es vorkommen, dass Sie aus Versehen das falsche Paket installiert haben.
Aber was tun Sie in diesem Fall? Suchen Sie sich womöglich die Dateien des Paketes
zusammen und löschen sie von Hand? Nein, es geht viel einfacher: Das Tool APT stellt
für solche Fälle einen Befehl bereit, mit dem Sie ein ausgewähltes Paket wieder löschen
können. Geben Sie dazu einfach den Befehl
apt-get remove
Abbildung 4.33 Die Dateien werden gelöscht.
Neben der Konsolenversion gibt es eine grafische Variante des Tools APT. Dieses Programm finden Sie auf dem Desktop im Startmenü unter Other. Nachdem Sie das Programm geöffnet haben, benötigt es eine kurze Zeit, um aktuelle Informationen über
installierte und nicht installierte Pakete zu sammeln. Wenn es diese Informationen
zusammengesucht hat, sieht der Startbildschirm in etwa so aus wie in Abbildung 4.34.
in die Konsole ein. Um das Programm dos2unix, das wir eben installiert haben, nun wieder zu deinstallieren, lautet der Befehl also:
apt-get remove dos2unix
Es empfiehlt sich aber, dieses Programm zu behalten, da es z.B. sehr sinnvoll ist, wenn
Sie Konsolenskripte für den Raspberry Pi an einem Windows-Rechner schreiben möchten (eine kleine Einführung dazu gebe ich Ihnen in Kapitel 7, »Augen auf!
Die Raspberry-Pi-Kamera einsetzen«). Einige Augenblicke später fragt das Betriebssystem, ob die zu dem Programm gehörenden Pakete wirklich entfernt werden sollen
(siehe Abbildung 4.32).
92
Abbildung 4.34 Das Startmenü des Paketmanagers
93
4
4.3
Wichtige Konsolenbefehle im Griff
Die Navigation durch das Menü ist sehr übersichtlich und oben in der Kopfzeile zusammengefasst. Durch das Drücken auf (¢) öffnen Sie das angewählte Untermenü, z.B.
Not Installed Packages. Um es wieder zu schließen, wählen Sie es erneut aus und
drücken wieder auf (¢).
Installieren neuer Software via Konsole
Programm dos2unix aus. Anschließend installieren Sie das Paket über Package 폷
Install (siehe Abbildung 4.37).
Gehen wir erneut die Installation des Programmes dos2unix durch, nur benutzen wir
diesmal den Paketmanager statt der Konsole. Als Erstes gehen Sie mit dem Mauscursor
oben in der Leiste auf Search und anschließend auf find (siehe Abbildung 4.35).
4
Abbildung 4.37 Die Installation des Programms über den Paketmanager
Abbildung 4.35 Das Suchmenü
Sobald das Programm installiert wurde, verfärbt sich die Schrift grün, und beim Wechsel in das Fenster des Paketmanagers erscheint eine grüne Zeile, die Sie in Abbildung
4.38 sehen.
Anschließend öffnet sich ein Suchfenster, wie es in Abbildung 4.36 zu sehen ist. Dort
geben Sie den Suchbegriff »dos2unix« ein.
Abbildung 4.38 Die Installation wurde abgeschlossen.
Wenn Sie die Zeile des Programms nun auswählen, können Sie durch Drücken der Taste
(U) einen Updatevorgang für das Programm starten. Natürlich benötigen Sie dafür rootRechte, und Sie werden gefragt, ob Sie dem Paketmanager diese Rechte erteilen, so dass
er sich als Benutzer root anmelden darf (siehe Abbildung 4.39).
Abbildung 4.36 Eingabe des zu suchenden Programms
Unser gesuchtes Programm befindet sich gleich an erster Stelle. Mit einem Klick auf Ok
beenden Sie das Suchfenster. Danach wählen Sie, falls das noch nicht geschehen ist, das
94
Abbildung 4.39 Darf der Paketmanager das Paket aktualisieren?
95
4
4.4
Wichtige Konsolenbefehle im Griff
Wählen Sie Become root, wird nach dem Passwort für den Benutzer root gefragt;
sobald Sie dieses richtig eingegeben haben, beginnt der Updatevorgang (siehe Abbildung 4.40).
Der Editor »nano«. Wie nutze ich ihn?
왘 Ein Paket installieren Sie mit dem Befehl apt-get install <Paketname>.
왘 Um ein Update aller Pakete durchzuführen, nutzen Sie erst den Befehl apt-get update
zum Aktualisieren der Paketlisten und dann den Befehl apt-get upgrade zum Aktualisieren der Programme.
왘 Mit dem Befehl apt-get remove <Paketname> entfernen Sie ein bestimmtes Paket.
4
왘 Zusätzlich zu der konsolenbasierten Installationsmethode über den Befehl apt-get
install gibt es auf dem Desktop im Startmenü unter Others den Aptitude
Package Manager für eine grafikgestützte Installation von Programmen.
4.4 Der Editor »nano«. Wie nutze ich ihn?
Abbildung 4.40 Das Update wird durchgeführt.
Um das Programm wieder zu entfernen, öffnen Sie einfach wieder das Menü Package,
wählen aber diesmal nicht Install, sondern Remove (siehe Abbildung 4.41).
In diesem Abschnitt beschäftigen wir uns mit einem der wichtigsten Programme, die
Sie benötigen, um Dateien innerhalb der Konsole zu bearbeiten. Es handelt sich um den
Editor nano. Der Editor ist beim Aufspielen eines Raspbian-Wheezy-Images bereits vorinstalliert, so dass Sie direkt mit ihm arbeiten können. Alles in allem ist er sehr übersichtlich gehalten; er verfügt über Standard-Textbearbeitungsfunktionen und ist in der
Lage, verschiedene Programmiersprachen wie C, Python und Java zu erkennen und hervorzuheben. In Abbildung 4.42 sehen Sie ein kurzes Beispiel, wie z. B. ein PythonProgramm im Editor nano abgebildet wird.
Abbildung 4.41 Das Programm wird wieder gelöscht.
Mit einem Druck auf (Q) schließen Sie den Paketmanager am Ende der Arbeit. Damit
wären die wichtigsten Punkte im Umgang mit dem Paketmanager erklärt, und ich kann
das neu Gelernte wieder kurz zusammenfassen:
왘 Das Tool APT dient dazu, Pakete, welche alle wichtigen Dateien für ein bestimmtes
Programm enthalten (ähnlich einer CD), herunterzuladen, zu entpacken und zu
installieren.
96
Abbildung 4.42 Der Editor nano im Einsatz
97
Kapitel 5
Der Raspberry macht Musik –
als MP3-Player
5
Jetzt haben Sie schon allerhand Dinge über den Raspberry Pi erfahren. Zeit, das
gesammelte Wissen anzuwenden: Richten Sie sich einen MP3-Player ein!
In diesem Kapitel lernen Sie, wie Sie einen MP3-Player auf dem Raspberry Pi installieren.
Dadurch verleihen Sie dem Raspberry Pi die Möglichkeit, Musik wiederzugeben, und Sie
können ihn z.B. als kleine Radiostation für einen Internetradiosender oder als Abspielgerät für die Lieblingsmusik nutzen. Dabei können Sie den Raspberry Pi bequem aus der
Ferne z.B. über den eigenen Computer oder ein Tablet bedienen und mit der gewünschten Musik versorgen.
Die Audioausgabe können Sie dabei auf viele verschiedene Weisen realisieren. Ich für
meinen Teil verwende den HDMI-Anschluss, um den Sound über meinen Monitor wiedergeben zu können. Natürlich können Sie aber auch den analogen Audioausgang des
Raspberry Pi benutzen, wenn Sie lieber normale Lautsprecher an den Raspberry Pi
anschließen wollen. Eine weitere Möglichkeit besteht darin, die Wolfson Pi Audio Card
zu verwenden. Hierbei handelt es sich um eine besondere Soundkarte speziell für den
Raspberry Pi. Sie ist z.B. für etwa 36 € bei www.amazon.de erhältlich.
Die ganze Audioausgabe geschieht über ein Programm, das sich Music Player Daemon
oder auch MPD nennt. Dieses Programm agiert im Hintergrund und stellt eine Musikbibliothek bereit. Die Bedienung des MPDs kann auf viele verschiedene Weisen mit
sogenannten Music Player Clients, kurz MPCs, erfolgen. MPCs gibt es für alle möglichen
Plattformen wie Android, Windows und iOS. Eine gute Übersicht über alle Clients findet sich unter www.mpd.wikia.com/wiki/Clients, und dort gibt es auch eine Kategorie
Windows, wo sich Windows-Nutzer einen Client herunterladen können. Ich arbeite
mit dem Client Auremo, der sich für Windows Vista, Windows 7 und Windows 8 eignet.
Für den Download des Clients öffnen Sie den genannten Link und folgen in der Liste
unter »Windows« dem Link zu Auremo. Dort finden Sie wie in Abbildung 5.1 den
Download.
131
5
5.1
Der Raspberry macht Musik – als MP3-Player
Installation und Konfiguration des Music Player Daemon (MPD)
5
Abbildung 5.1 Hier finden Sie den Client zum Download.
Sobald Sie auf den Link klicken, kommen Sie auf eine Seite von Google Code, wo Sie die
aktuellste Version herunterladen können (In Abbildung 5.2 ist es die Auremo-0.6.1installer.exe).
Abbildung 5.3 Diese Meldung ist beim ersten Start normal.
Im nächsten Schritt aktivieren Sie die Soundausgabe. Da die Soundausgabe bei jedem
Neustart neu aktiviert werden muss, schreiben wir diese Befehle in die Datei /etc/
rc.local. Diese Datei wird bei jedem Neustart automatisch ausgeführt und ist somit die
ideale Möglichkeit, Starteinstellungen beim Booten zu laden. Als Erstes öffnen Sie also
die Datei mit dem Befehl
nano /etc/rc.local
Alles das, was Sie zwischen dem fi und dem exit 0 eingeben, wird beim Startvorgang
ausgeführt. Um die Soundausgabe zu aktivieren, fügen Sie folgende Zeilen ein:
modprobe snd_bcm2835
amixer cset numid=3 1
Abbildung 5.2 Laden Sie diese Datei herunter.
Nach dem Download wird der Client noch installiert, und damit sind die Arbeiten am
Computer abgeschlossen. Zeit, sich dem Raspberry Pi zu widmen.
5.1 Installation und Konfiguration des Music Player Daemon (MPD)
Jetzt installieren Sie die notwendige Software auf dem Raspberry Pi. Um den MPD zu
installieren, öffnen Sie eine Konsole als Benutzer root und geben folgenden Befehl ein:
apt-get install mpd mpc
Am Ende der Installation erscheint die Meldung aus Abbildung 5.3. Diese Meldung
braucht Sie aber erst einmal nicht weiter zu beunruhigen, denn sie erscheint nur, weil
Sie den MPD noch nicht konfiguriert haben.
132
Was bewirken diese beiden Zeilen genau? Mit der ersten Zeile wird das Kernelmodul für
die Soundausgabe geladen. Das Laden eines Kernelmoduls geschieht dabei immer mit
dem Befehl
modprobe Modulname
In diesem Fall wird also das Modul snd_bcm2835 geladen. Sie werden den Befehl später
noch einmal sehen, wenn es um die Programmierung der I²C-Schnittstelle geht.
Kernelmodule per Autostart laden
Kernelmodule, die durch den Befehl modprobe geladen wurden, müssen nach einem
Neustart neu geladen werden. Dies kann manuell vom Benutzer oder automatisiert mit
Hilfe eines Skriptes gemacht werden. Um dieses Problem zu umgehen, schreiben Sie
den Befehl oben in die Datei /etc/rc.local. Diese Datei wird bei jedem Neustart aufgerufen, und so können bei einem Neustart automatisch bestimmte Konsolenbefehle
ausgeführt werden.
133
5
5.1
Der Raspberry macht Musik – als MP3-Player
Mit der Zeile amixer cset numid=3 n legen Sie das Interface fest, über das der Sound ausgegeben werden soll. Anstelle des Buchstaben n setzen Sie Folgendes:
왘 0 = auto
왘 1 = analog
Installation und Konfiguration des Music Player Daemon (MPD)
mkdir /home/pi/Desktop/Musik
mkdir /home/pi/Desktop/Musik/Playlist
Im nächsten Schritt öffnen Sie die Konfigurationsdatei des MPD:
왘 2 = HDMI
nano /etc/mpd.conf
Die Zeile amixer cset numid=3 1 müssen Sie nur hinzufügen, wenn als Soundausgabequelle nicht der HDMI-Anschluss genutzt werden soll. Es schadet aber auch nicht, beide
Zeilen einzufügen – so sind Sie am Ende ein bisschen flexibler.
In dieser Datei stellen Sie als Erstes den Pfad der Musik und der Playlists ein. Dafür passen Sie die Punkte music_directory 1 und playlist_directory 2 wie in Abbildung 5.5 an.
5
Audioausgabe: HDMI oder analog
Sobald ein HDMI-Kabel eingesteckt ist, deaktiviert der Raspberry Pi automatisch den
analogen Audioausgang. Die Audioausgabe kann also entweder über HDMI oder über
die analoge Verbindung erfolgen, aber nicht über beide gleichzeitig!
Die fertig bearbeitete Datei sieht am Ende so aus wie in Abbildung 5.4, hier mit Soundausgabe über HDMI.
Abbildung 5.5 Hier tragen Sie die Pfade der Ordner für die Musik ein.
Als Zweites aktivieren Sie den Netzwerkzugriff, indem Sie den Punkt bind_to_address
"localhost" auskommentieren. Diese Einstellung sagt dem Programm, dass es nur auf
dem installierten Rechner, dem sogenannten localhost, angesprochen werden darf. Da
das Programm aber auch von jedem anderen Gerät (Computer, Tablet, etc.) gesteuert
werden soll, müssen Sie diesen Punkt auskommentieren, wodurch er unwirksam wird.
Um die Zeile auszukommentieren genügt es, wie in Abbildung 5.6 gezeigt, wenn Sie ein
# vor die jeweilige Zeile setzen.
Abbildung 5.4 Die fertig bearbeitete Datei
Mit einem Druck auf (Strg) + (X) speichern Sie die Datei und starten anschließend den
Raspberry Pi mit reboot neu. Nach dem Reboot melden Sie sich dann erneut als Benutzer root an und erstellen zwei Ordner für die Musik. Der erste Ordner dient als allgemeiner Musikordner, der zweite soll dann die fertigen Playlists enthalten.
Natürlich müssen Sie keine zwei Ordner anlegen. Sie können die nachfolgenden
Schritte auch mit nur einem Ordner durchführen, was Sie dann im weiteren Verlauf entsprechend berücksichtigen müssen. Diese Ordner speichern unter dem Pfad /home/pi/
Desktop ab:
134
Abbildung 5.6 Der Netzwerkzugriff wird aktiviert.
Im letzten Schritt konfigurieren Sie die Soundausgabequellen. In Abbildung 5.7 und
Abbildung 5.8 sehen Sie zwei Screenshots, in denen ich einmal die Soundquelle HDMI
und einmal die obengenannte USB-Soundkarte als Soundquelle einstelle. Es können
natürlich auch beide Quellen gleichzeitig verwendet werden!
135
5
5.1
Der Raspberry macht Musik – als MP3-Player
Installation und Konfiguration des Music Player Daemon (MPD)
Das Programm wurde nach der Installation automatisch im Hintergrund gestartet, aber
damit die Änderungen in der Konfigurationsdatei wirksam werden, müssen Sie das Programm einmal neu starten:
/etc/init.d/mpd restart
5
Danach sehen Sie in der Konsole wie in Abbildung 5.9 eine Bestätigung.
Abbildung 5.7 So sieht die Soundausgabe über HDMI aus ...
Abbildung 5.9 Wenn zweimal ein grünes »ok« erscheint, hat alles geklappt.
Abbildung 5.8 ... und so über die obengenannte USB-Soundkarte.
Zeit für den ersten Test mit Musik: Dazu öffnen Sie FileZilla und stellen eine Verbindung
zu Ihrem Raspberry Pi her. Anschließend wählen Sie auf der rechten Seite – sprich in der
Ordnerstruktur des Raspberry Pi – das Verzeichnis /home/pi/Desktop/Playlists aus
(siehe Abbildung 5.10). In dieses Verzeichnis kopieren Sie nun per Drag & Drop ein Lied.
Die Ausgabequelle können Sie dann bequem beim Client auswählen. Sobald Sie alle Eintragungen abgeschlossen haben, speichern Sie die Datei mit (Strg) + (X). Jetzt haben Sie
es fast geschafft! Mit der Zeile
chmod g+w /home/pi/Desktop/Musik/Playlist
gewähren Sie dem MPD noch die notwendigen Rechte und mit dem Befehl
chgrp audio /home/pi/Desktop/Musik/
ändern Sie die Gruppenzugehörigkeit des Ordners /home/pi/Desktop/Musik und fügen
ihn der Gruppe audio hinzu.
Soundkarte ansteuern: Nur für Mitglieder
Nur Programme, die der Gruppe audio angehören, dürfen Töne über die Soundkarte
bzw. über die Soundschnittstelle ausgeben. Da das Programm MPD bereits der Gruppe
angehört, müssen alle Ordner, auf die das Programm zugreifen will, auch Mitglied der
Gruppe audio sein, weil das Programm sonst nicht über die Berechtigungen verfügt,
diese Dateien zu öffnen!
136
Abbildung 5.10 Das Lied wurde erfolgreich kopiert.
Jetzt starten Sie das PC-Programm, und es öffnet sich direkt das Fenster aus Abbildung
5.11, wo Sie die IP-Adresse des Raspberry Pi eintragen, die Sie in Abschnitt 4.4 vergeben
haben.
Falls Sie die IP-Adresse nicht mehr genau wissen, so können Sie sich diese Adresse mit
dem Befehl ifconfig eth0 anzeigen lassen. Unter dem Punkt inet addr sehen Sie dann
die aktuelle IP-Adresse des Raspberry Pi. Mit einem Klick auf OK bestätigen Sie die Eingabe. Falls Sie dann noch nicht mit Ihrem Raspberry Pi verbunden sein sollten, klicken
137
5
5.2
Der Raspberry macht Musik – als MP3-Player
Sie oben in der Leiste auf Connection und anschließend auf Connect. Ihre Musik finden Sie dann u.a. unter Filesystem (siehe Abbildung 5.12).
Eine externe Festplatte als Musikspeicher nutzen
Mit einem Doppelklick kopieren Sie das Lied in die nebenstehende Playlist, die Sie dann
durch einen Klick auf Play abspielen (siehe Abbildung 5.13). Sie müssen jeden Song, den
Sie abspielen wollen, erst in eine Playlist kopieren. Direktes Abspielen ist nicht möglich!
5
Abbildung 5.13 Die Playlist wird abgespielt – der Player funktioniert.
Abbildung 5.11 Hier geben Sie die Verbindungsdaten Ihres Raspberry Pi ein.
5.2 Eine externe Festplatte als Musikspeicher nutzen
Natürlich ist es nicht sonderlich praktisch, die Musik nur auf so umständliche Weise
über FileZilla auf den Raspberry Pi kopieren zu können. Aus diesem Grund werden wir
den Ordner nun im Netzwerk freigeben. So können Sie über jeden Rechner, der im Netzwerk angemeldet ist, ganz einfach Musik auf den Raspberry Pi kopieren.
Für die Netzwerkfreigabe verwenden wir das Programm Samba, das es uns ermöglicht,
eine Netzwerkfreigabe von Windows-Laufwerken zu emulieren. Das Programm installieren Sie wie folgt:
apt-get install samba samba-common-bin
Abbildung 5.12 Hier wird Ihre Musik anzeigt.
138
Nach der Installation schließen Sie einen USB-Stick oder eine USB-Festplatte an den Raspberry Pi an und erstellen eine ext3-Partition auf dem Speichermedium, wie auf Abbildung 5.14 zu sehen). Die Vorgehensweise haben Sie bereits in Abschnitt 4.2, »Wie ist das
139
5
Der Raspberry macht Musik – als MP3-Player
5.2
Eine externe Festplatte als Musikspeicher nutzen
Dateisystem aufgebaut?«, kennengelernt, darum ist diese Aufgabe schon beinahe ein
Kinderspiel.
5
Abbildung 5.16 Der Datenträger wurde erfolgreich gemountet.
Jetzt können Sie sich der Konfiguration von Samba zuwenden. Zuerst müssen Sie die
Arbeitsgruppe im Netzwerk herausfinden. Unter Windows 7 öffnen Sie das Startmenü
Ihres Computers und anschließend die Systemsteuerung.
Abbildung 5.14 Eine neue Partition auf einem USB-Stick für den Music Player
Dieses Mal aber integrieren Sie den Datenträger in die Datei /etc/fstab; so wird der
Datenträger bei jedem Neustart des Systems automatisch gemountet, und Sie müssen
sich nicht mehr darum kümmern. Nach der Erstellung des Datenträgers rufen Sie die
Datei auf:
Wenn Sie Windows 8/8.1 nutzen, verwenden Sie auf dem Desktop die Tastenkombination (œ) + (E). Im sich öffnenden Fenster klicken Sie auf das Menü Computer. Von dort
aus können Sie direkt zur Systemsteuerung 1 wechseln.
Sobald Sie die Systemsteuerung geöffnet haben, klicken Sie auf System 2 (siehe Abbildung 5.17).
nano /etc/fstab
In der Datei /etc/fstab tragen Sie jetzt den Speicher ein, der gemountet werden soll
(/dev/sda1), sowie den Mountpunkt (/home/pi/Desktop/Musik), das Dateisystem (ext3),
die Mountoptionen (rw für Schreiben und Lesen) und zwei Parameter, die angeben, ob
die Partition gesichert oder überprüft werden soll (die beiden letzten Zahlen 0 und 0,
siehe Abbildung 5.15).
Abbildung 5.15 Die fertigen Eintragungen in der Datei
Mit (Strg) + (X) übernehmen Sie die Änderung. Starten Sie anschließend den Raspberry
Pi mit reboot neu. Nach dem Reboot können Sie mit dem Befehl df –h überprüfen, ob
der Datenträger gemountet wurde (siehe Abbildung 5.16).
140
Abbildung 5.17 Hier finden Sie die Informationen zu Ihrem Computer.
141
5
5.2
Der Raspberry macht Musik – als MP3-Player
Eine externe Festplatte als Musikspeicher nutzen
Sobald Sie auf System geklickt haben, erscheint ein neues Fenster, in dem alle möglichen Informationen über Ihren Computer angezeigt werden. Die Information, die wir
suchen, nennt sich Arbeitsgruppe (siehe Abbildung 5.18).
Abbildung 5.21 Ein Ordner wurde freigegeben.
5
Abbildung 5.18 Die Arbeitsgruppe im Netzwerk
Diese Information merken Sie sich und öffnen auf dem Raspberry Pi die Konfigurationsdatei für Samba:
nano /etc/samba/smb.conf
Der Ausdruck zwischen [ ] ist der Freigabename (den Sie nachher noch benötigen werden), unter comment können Sie einen zusätzlichen Kommentar zu der Freigabe ausgeben, und mit path geben Sie den kompletten Pfad des freizugebenden Ordners an. Die
letzten beiden Parameter legen fest, dass keine Gäste auf das Laufwerk Zugriff haben
und dass Daten auf dem Laufwerk abgelegt werden dürfen. Speichern Sie die Datei, und
schließen Sie den Editor ((Strg) + (X) und mit (Y) bestätigen).
Jetzt müssen Sie noch einen Benutzer festlegen, der später auf das Laufwerk zugreifen
darf. Der Einfachheit halber nehmen Sie für unser Beispiel dazu den Benutzer pi, den Sie
mit dem Befehl smbpasswd –a pi als Samba-User festlegen. Danach müssen Sie noch ein
Passwort vergeben, siehe Abbildung 5.22.
In dieser Datei ändern Sie als Erstes den Punkt workgroup ab wie in Abbildung 5.19.
Abbildung 5.22 Vergeben Sie ein neues Samba-Passwort.
Abbildung 5.19 Tragen Sie die Arbeitsgruppe ein.
Den Punkt security unter Authentication ändern Sie wie in Abbildung 5.20.
Abbildung 5.20 Setzen Sie die Zugriffsrechte.
Am Ende der Datei müssen Sie jetzt noch wie in Abbildung 5.21 die freizugebenden Ordner angeben.
142
Wichtiger Hinweis zu Samba-Benutzern
Bei den Benutzern für Samba müssen Sie darauf achten, dass diese bereits im System
registriert sind. Sie können also keinen Samba-User xyz anlegen, wenn es im Betriebssystem keinen »normalen« Benutzer namens xyz gibt. Es ist außerdem von Vorteil,
wenn das Samba-Passwort eines Benutzers anders lautet als dessen Passwort für das
Linux-System. So kann im Falle eines Passwortdiebstahls kein Unfug mit dem Account
des Benutzers getrieben werden, da der Dieb nur das Samba-Passwort besitzt.
Da das Verzeichnis /home/pi/Desktop/Musik nun als Mountpoint für den USB-Speicher
dient, müssen Sie das Verzeichnis Playlists neu erstellen, damit sich das Verzeichnis
Playlists auch auf dem Stick befindet. Zugleich ändern Sie die Besitzer des Verzeichnisses so um, dass der angemeldete Benutzer nachher auch in die freigegebenen Verzeichnisse schreiben darf.
143
5
Der Raspberry macht Musik – als MP3-Player
Sie geben also Folgendes in die Konsole ein:
mkdir /home/pi/Desktop/Musik/Playlist
chown –R pi:pi /home/pi/Desktop/Musik
chown –R pi:pi /home/pi/Desktop/Musik/Playlist
5.2
Eine externe Festplatte als Musikspeicher nutzen
Anschließend erscheint ein Assistent, der Ihnen bei der Netzwerkfreigabe zur Seite
steht. Klicken Sie erst einmal auf Weiter und dann auf den Punkt Eine benutzerdefinierte Netzwerkadresse auswählen (siehe Abbildung 5.25).
Jetzt ist der Benutzer pi im Besitz der Verzeichnisse für die Musik (siehe Abbildung 5.23).
5
Abbildung 5.23 Die Rechte wurden neu vergeben.
Abbildung 5.25 Wählen Sie diesen Menüpunkt aus.
Mit dem Befehl /etc/init.d/samba restart starten Sie Samba zum Schluss neu. Sobald
der Neustart geglückt ist (dies erkennen Sie daran, dass in der Konsole zweimal ein
grünes OK erscheint), öffnen Sie an Ihrem Computer den Computer, rechtsklicken im
Explorer und wählen wie in Abbildung 5.24 Netzwerkadresse hinzufügen aus.
Mit einem Klick auf Weiter wechseln Sie zur nächsten Seite, wo Sie die IP-Adresse Ihres
Raspberry Pi eingeben (siehe Abbildung 5.26). Die Eingabe bestätigen Sie dann mit
einem erneuten Klick auf Weiter.
Abbildung 5.26 Die IP-Adresse Ihres Raspberry und der Name
der vorher erstellten Samba-Freigabe.
Wählen Sie einen Namen für die Freigabe (meiner lautet ganz schlicht »MPD«), der
nachher zur Anzeige im Computer (bzw. im Arbeitsplatz) dient. Mit einem erneuten
Klick auf Weiter und dann auf Fertigstellen beenden Sie den Assistenten und schließen die Freigabe ab.
Abbildung 5.24 Eine neue Netzwerkfreigabe wird erstellt.
144
Abbildung 5.27 Hier müssen sich neue Benutzer anmelden.
145
5
Der Raspberry macht Musik – als MP3-Player
Jetzt öffnet sich umgehend das Fenster aus Abbildung 5.27, in dem Sie den vorhin angelegten Benutzernamen und das Passwort eingeben. Wer es bequem haben möchte, setzt
noch einen Haken bei Anmeldedaten speichern. Wenn Sie das Passwort speichern,
müssen Sie sich nicht immer neu anmelden, wenn Sie auf den Speicher zugreifen wollen. Aber bedenken Sie: Wenn Sie den Haken setzen, dann kann jeder Benutzer, der den
Account mit der Ordnerfreigabe benutzt, ebenfalls auf den Ordner zugreifen! Überlegen
Sie sich deswegen genau, ob Sie das Passwort speichern möchten.
Wenn Sie auf OK geklickt und alles richtig gemacht haben, erscheint der Ordner auf
dem Raspberry Pi, so wie in Abbildung 5.28.
Abbildung 5.28 Geschafft! Der Ordner ist freigegeben und einsatzbereit.
Jetzt können Sie ganz bequem Musik in den Ordner ziehen und abspielen. Zusammen
mit einem WLAN-Stick und ein paar Boxen mit HDMI-Anschluss wird daraus eine richtig schöne Musikanlage, die sich z.B. mit einem Android Smartphone/Tablet und der
App MPDroid fernsteuern lässt. Auch das Hinzufügen eines Radiostreams aus dem
Internet ist möglich. Hierzu klicken Sie im Programm Auremo auf Streams, rechtsklicken in das linke Fenster, wählen den Punkt Add Stream by URL, geben eine URL ein
und ziehen den Stream in die Playlist.
146