Basisinstallation Raspberry Pi 2B

Was wird zum Starten mit dem ersten SmartHome-Baustein benötigt? Natürlich ein Raspberry Pi, hier in der Version 2B zusammen mit einer Micro-SD-Karte:

raspberry-pi-2b-800-300x251

Der Raspberry Pi 2B soll in das Netzwerk integriert werden. Für die Inbetriebnahme reichen neben einer Tastatur ein Ethernet- und HDMI-Kabel, der Normalbetrieb wird später über WLAN abgewickelt – zu empfehlen ist der USB-Wireless-Adapter Edimax EW-7811Un. Im August 2018 lag der Preis noch bei 8,49 e, im Dezember 2021 sind es bereits stolze 17 e. Da keine grafische Oberfläche geplant ist, entfällt eine Maus. Etwas Strom in der Größenordnung 5 Volt / 2 Ampere und abschließend ein Gehäuse werden auch noch benötigt.

raspberry-pi-kabel-800-300x204
Abbildung 2: Zubehör: USB-Wireless-Adapter, Kabel, Stromversorgung

Der Raspberry Pi 2B selbst besitzt einen 64-Bit-Prozessor, es sind aber nicht alle Distributionen hierfür verfügbar. Es ist eine Philosophiefrage, ich möchte allerdings für den Raspi die Longtime-Versionen von Ubuntu Server einsetzen. Die Recherche auf den Ubuntuseiten zeigt, dass für das Modell 2B ein 32-Bit-Paket von Ubuntu 20.04.3 LTS verfügbar ist, für das Nachfolgemodell gibt es ein 64-Bit-Paket von Ubuntu 20.04.5 LTS (Stand Dezember 2021).
Also von der Website http://cdimage.ubuntu.com/ubuntu/releases/20.04.3/release/ über den Link Raspberry Pi Generic (Hard-Float) preinstalled server image das Paket ubuntu-20.04.3-preinstalled-server-armhf+raspi.img.xz herunterladen und mit einem geeigneten Programm (z. B. 7-Zip) das Paket zu einem bootfähigen Image entpacken. Mit einem weiteren Tool (z. B. Win32DiskImager) kann dieses Image jetzt auf eine Micro-SD-Karte geschrieben werden, um damit den Raspberry Pi booten zu können. Das entpackte Paket hat eine Größe von ca. 3 GB, eine 16-GB-Karte sollte genug Reserven für die ersten Tests besitzen.
Das Schreiben des Image geht am Einfachsten mit einem USB-Cardreader …

raspberry-pi-card-reader-800-300x122
Abbildung 3: USB-Cardreader

… und den folgenden Arbeitsschritten:

  •  Starten des Win32DiskImagers
  •  Suchen der Imagedatei im Filesystem
  •  Einstellen des Laufwerks der Micro-SD-Karte
  •  Starten des Kopiervorgangs über die Schaltfläche Schreiben
  •  Bestätigen der Überschreiben-Warnung
  •  Die neu beschriebene Micro-SD-Karte generiert ein neues Laufwerk im Filesystem, dieses ist unter Windows nicht ansprechbar. Eine daraus resultierende Fehlermeldung ist zu ignorieren.
  •  Einsetzen der Micro-SD-Karte in den Raspberry und Starten des Rechners
  •  Für die Erstinbetriebnahme wird nur die Stromversorgung, ein Ethernet- und HDMI-Kabel incl. Monitor und eine Tastatur benötigt.
  • Unter Windows ist es schwierig, in der GUI eine einmal installierte Micro-SD-Karte noch einmal zu beschreiben.

Hier gibt es aber die Möglichkeit, mit dem Kommandozeilentool diskpart die Karte wieder in den Ausgangszustand zurückzuversetzen.
Hierzu folgende Arbeitsschritte und Kommandos ausführen:

  •  Aufrufen der Kommandozeile über cmd.exe
  •  Starten von diskpart
  •  Eingeben der folgenden Kommandos:
list disk   --> hier feststellen, welche Datenträgernummer die Micro-SC-Karte hat (hier als Beispiel die Nummer 3)
select disk 3
clean 
create partition primary
list part   --> Partition 1 ist aktiv
active
format fs=Fat32 quick
assign   --> Zuweisen des Laufwerksbuchstaben

Jetzt kann das Image neu und problemlos geschrieben werden. Nach dem Start des Raspis hat dieser zunächst den Hostnamen ubuntu, Default-Account und -Passwort lauten ebenfalls ubuntu. Bei der ersten Anmeldung muss das Initialpasswort geändert werden. Mit sudo su können Rootrechte erlangt werden.

Anstelle dem bisher üblichen Kommando ifconfig ist das modernere Kommando ip bereits installiert, es zeigt, dass sich der Raspi bereits über DHCP mit dem Netzwerk verbunden hat:

ip address show
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether b8:27:eb:8c:64:a2 brd ff:ff:ff:ff:ff:ff
inet 172.24.12.116/24 brd 172.24.12.255 scope global dynamic eth0

Prinzipiell gibt es ab dieser Stelle zwei mögliche Vorgehensweisen bei der weiteren Konfiguration:
Es kann direkt an der Konsole gearbeitet werden oder remote über einen SSH-Client, wie z. B. Putty. Dabei zeigt sich ein markanter Unterschied: Remote über Putty hat man ein deutsches Tastaturlayout, direkt an der Konsole aber noch ein englisches Tastaturlayout – für viele sicher nicht optimal. Bevor es mit der Netzwerkinstallation weitergeht, soll deshalb zunächst das Konsolenlayout auf deutsch geändert werden.

Tastaturlayout der Konsole und Zeitzone ändern

Nach dem Anmelden an der Konsole kann das Tastaturlayout mit den folgenden Befehlen auf deutsch geändert werden, gleichzeitig ist es sinnvoll, die Zeitzone auf Berlin zu stellen. Abschließend ist der Raspi zu rebooten:

sudo su
apt update
apt install language-pack-de

dpkg-reconfigure keyboard-configuration

   Auswahl Keyboard-Modell:     Generic 105-key PC (intl.)
   Land des Ursprung-Keyboards: German
   Tastaturlayout:              German
   Taste für AltGr-Funktion:    The default for the keyboard layout
   Compose key:                 No compose key

dpkg-reconfigure tzdata

   Geographic area:             Europe
   Time zone:                   Berlin

reboot

Remoteanmeldung

ssh ist per default installiert, damit kann sich der non-root-Benutzer ubuntu bereits remote anmelden. Soll sich auch root remote anmelden können, ist zunächst die Datei /etc/ssh/sshd_config anzupassen. Da root bislang noch kein Passwort besitzt, ist dieses zu setzen. (Ich bin mir bewusst, dass diese Listingzeilen die Community in Geht überhaupt nicht und Mache ich immer so teilt, Tatsache ist aber, dass es für produktive Umgebungen tabu ist)

sudo su
vi /etc/ssh/sshd_config

   Zeile 34:
   PermitRootLogin yes

systemctl restart ssh
passwd

Netzwerkkarte (LAN) statisch einstellen

Selbstverständlich ist es möglich, den Raspi mit einer DHCP-Adresse zu betreiben. Da auf dem Raspi aber schon ein Serverbetriebssystem installiert wurde, macht es auch Sinn, eine statische IP-Adresse (im Beispiel 172.24.12.207) einzurichten. Seit Ubuntu 17.10 verwendet Canonical das Netplan-Paket, das mit Hilfe einer YAML-Konfigurationsdatei die Netzwerkkarte einrichtet. Für die Übernahme der Netzwerkkarteneinstellungen reicht ein netplan apply aus.

sudo su
vi /etc/netplan/50-cloud-init.yaml

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      dhcp6: no
      addresses: [172.24.12.205/24]
      gateway4: 172.24.12.1
      nameservers:
        addresses: [172.24.12.1]

netplan apply

Netzwerkkarte (WLAN) statisch einstellen

Der Raspberry Pi 2B hat noch keinen integrierten WLAN-Controller, hier empfiehlt sich der USB-Wireless-Adapter Edimax EW-7811Un – ein sehr kleiner Adapter ohne eine zusätzliche Antenne. Der benötigte Treiber wird durch Ubuntu bereits mit installiert. Um auf WLAN umzuschalten, wird im Konfigurationsblock nur die Netzwerkkarte ausgetauscht und um die Parameter der Funkstrecke (SSID und Passwort) ergänzt. Normalerweise reicht ein netplan apply aus, in ganz harten Fällen kommt die Verbindung aber nach einem Reboot zustande.

sudo su
vi /etc/netplan/50-cloud-init.yaml

network:
  version: 2
  renderer: networkd
  wifis:
    wlan0:
      dhcp4: no
      dhcp6: no
      addresses: [172.24.12.207/24]
      gateway4: 172.24.12.1
      nameservers:
        addresses: [172.24.12.1]
      access-points:
        "RASPI":
          password: "<password>"

netplan generate
netplan apply

An dieser Stelle ist die Basisinstallation des Raspis prinzipiell abgeschlossen. Es können nun die ersten Sensoren und Aktoren angeschlossen werden. Der Raspi selbst benötigt nur noch eine Stromversorgung, über die WLAN-Verbindung ist er im Netzwerk z. B. über Putty erreichbar, damit kann er komplett remote administriert werden.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert