Archiv für den Monat: Dezember 2013

#PrismBreak – Raspberry Pi Grundeinrichtung

Für mein PrismBreak Projekt hatte ich bisher verschiedene Rechner benutzt. Angefangen mit einem Raspberry Pi Modell A, dann ein Atom basierten PC zu einem Root-Server. Da ich die Daten und Dienste gerne wieder komplett unter meiner Kontrolle haben will, soll es jetzt wieder eine Lösung mit Raspberry Pi Rechnern werden. Dabei habe ich mir vorgenommen, jeden Dienst einzeln auf einem Raspberry laufen zu lassen. Also Owncloud, PostgreSQL-Datenbank und Mailserver jeweils auf einem eigenen Raspberry Pi. Fällt ein Raspberry aus sollte er einfach ersetzbar sein und nur der darauf installierte Dienst nicht erreichbar sein. Für den Start mit Owncloud und Mailserver sieht dies etwas nach overkill aus, ist aber gedacht als Grundlage für die Nutzung weiterer Dienste.

Als Linux war ich am Überlegen, ob es Raspian oder Arch werden sollte. Entschieden habe ich mich dann für Arch, da ich es bereits auf meinen Notebooks benutze und damit immer auf neuste Versionen von Software aktualisiert werde.

Einrichten Installationsmedium

Die Installation des Installationsimages auf eine SD-Karte gestaltet sich recht einfach. Die Anleitung findet sich hier.

Wichtig als Info: Benutzername und Passwort lauten „root„.

Die weiteren Tätigkeiten passieren auf der Kommandozeile. Entweder hat man an dem Raspberry eine Tastatur und Display angeschlossen, oder man verbindet sich per SSH. Für den Zugriff per SSH nimmt man unter Windows dazu Putty, unter Linux den normalen SSH Client. Für den Zugriff benötigt man die IP-Adresse, unter der der Raspberry im LAN erreichbar ist. Kann man die IP-Adresse über den Router, der die IP-Adressen im LAN bereitstellt und den Geräten zuweisst, ermitteln, kann man sich nun direkt per SSH mit dem Raspberry verbinden. Geht dies nicht, bleibt noch die Möglichkeit, sich per Tastatur und Display direkt am Raspberry anzumelden. Dazu gibt man als login „root“ und das Password „root“ ein. Anschliessend ruft man den Befehl „ifconfig“ auf. Nun werden die Netzwerkschnittstellen mit ihren Daten angezeigt. Es sollte ein Eintrag mit „eth0“ aufgeführt werden. Dort steht neben „inet“ eine Zahlenfolge, dies entspricht der IP-Adresse, unter der der Raspberry zu erreichen ist (bei mir 192.168.1.28).

HINWEIS: Beim erstmaligen verbinden per SSH wird man darauf hingewiesen, dass die Authentizität des Raspberry nicht überprüft werden kann. Man wird gefragt, ob man die Verbindung trotzdem aufbauen möchte. Diese Frage sollte man dann mit yes beantworten. Das sieht beispielhaft dann wie folgt aus:

Bildschirmfoto von »2013-12-25 16:51:52«

Verbindung per SSH mit Raspberry Pi herstellen und „Fingerabdruck“ lokal speichern

Eine Verbindung per SSH-Client kann man unter Linux mit folgender Befehlszeile aufbauen:

ssh -l root [IP-Adresse Raspberry Pi]

Mit der Option -l wird dem SSH-Client mitgeteilt, mit welchem Benutzernamen man sich verbinden will. Dies ist in diesem Fall root.
[IP-Adresse Raspberry Pi] ersetzt man entsprechend mit der ermittelten IP-Adresse des Raspberry Pi, im Beispiel oben 192.168.1.28.

Ländereinstellung anpassen

Standardmässig ist die Arch-Installation nicht auf deutsch eingestellt. Daher passen wir das noch an.

Bildschirmfoto von »2013-12-25 17:04:30«

Spracheinstellung nach Installation

Um eine Spracheinstellung vornehmen zu können, muss in /etc/locale.gen eine passende Zeile auskommentiert oder hinzugefügt werden. Die einfachste Variante ist folgende Zeilen ausführen zu lassen:

echo de_DE.UTF-8 UTF-8 >> /etc/locale.gen
locale-gen
localectl set-locale LANG="de_DE.UTF-8"
Spracheinstellung auf deutsch und UTF-8 setzen

Spracheinstellung auf deutsch und UTF-8 setzen

Damit die Änderungen greifen, muss der Raspberry Pi mit folgender Zeile neu gestartet werden. Dabei wird die SSH-Verbindung zum Raspberry beendet:

systemctl reboot

Partitionieren des Installationsmedium

Standardmässig wird nur ein 2GB grosses Image auf die SD-Karte geschrieben. Daher geht in der Regel viel Speicherplatz verloren, der auf der SD-Karte noch vorhanden ist. Im Folgenden wird beschrieben, wie die Partition(en) vergrössert werden, damit der komplette Speicherplatz auf der SD-Karte genutzt werden kann. Ich habe mich an der Anleitung orientiert, welche hier zu finden ist.

Die folgenden Befehle kann man direkt so eingeben:

fdisk /dev/mmcblk0
p
d
2
n
e
2
[Return]
[Return]
n
l
[Return]
[Return]
p
w

Das sieht im Terminal dann wie folgt aus:

Partition neu anlegen

Partition neu anlegen

Nun muss der Raspberry wieder neu gestartet werden:

systemctl reboot

Wenn er wieder hochgefahren ist und wir uns per SSH verbunden haben, vergrössern wir die Partition:

resize2fs /dev/mmcblk0p5
Partition vergrössern

Partition vergrössern

Nun steht der volle Speicherplatz der SD-Karte zur Verfügung!

System updaten/upgraden

Zu guter Letzt aktualisieren wir die Arch Installation auf den aktuellsten Stand. Dazu folgende Befehle ausführen:

pacman -Sy
pacman -Su --noconfirm
systemctl reboot

Der Reboot am Ende ist nur notwendig, wenn man erkennt, dass ein neuer Linuxkernel installiert wurde.