Lade...
 

RaspBerryPi ohne Tastatur und Bildschirm einrichten

Stand: 30.09.2020

Vorwort


Vorab, Raspbian wurde umbenannt und heißt nun Raspberry Pi OS.

Immer wieder ist man mit einer Standardinstallation für neue Entwicklerboards konfrontiert. Aus diesem Grund habe ich in dieser kurzen Anleitung alle mir wichtig erscheinenden Dinge zusammengefasst.

Ziel ist es, dass man zu keinem Zeitpunkt einen Bildschirm oder eine Tastatur anschließen muss. Dafür müssten nämlich alle Adapter, Kabel, Tastatur, … bereit stehen. Gerade beim PiZero oder Pi 3A+ ist dies durch eingeschränkte Anschlussmöglichkeiten schwierig.

Ich verwende für alle Arbeiten Linux (i. d. R. Ubuntu mit Cinnamon oder XFCE als Oberfläche). Es geht aber auch alles unter Windows oder macOS. Lediglich für direkte Änderungen im root-Dateisystem, ext4, ist Linux erforderlich. Das ist aber nur im Fehlerfall notwendig, wenn bspw. WiFi nicht richtig konfiguriert wurde und kein Zugriff über das Netzwerk möglich ist. Dafür benötigt man ohnehin einige Linux-Kenntnisse.

Geht etwas schief oder läuft nicht wie erwartet, kann man auch problemlos von vorn anfangen. Es geht alles ohne großen Zeitaufwand und „Übung macht den Meister“.

1. Beschaffung


Nachdem bspw. Pimoroni mit der deutschen Niederlassung weggefallen ist, ist die Beschaffung schwierig geworden. Hohe Portokosten und Preise trüben den Eindruck noch. Hier ein wenig bekannter Shop, den ich gefunden habe – www.welectron.com – sehr gut aufgeräumter Webshop mit hervorragender Konfigurationsmöglichkeit und halbwegs moderaten Portokosten. Nicht alle Artikelgruppen sind günstig, aber für Raspi und -Erweiterungen gut. Es lassen sich seht gut „Bundles“ zusammenstellen.

Zwei Beispiele, ein Pi Zero W kostet aktuell 16,08 EUR, der WH mit aufgelöteter Stiftleiste, 16,47 EUR, nur 39 Cent mehr. Andere Anbieter verlangen dafür einen Aufpreis von bis zu 3 EUR. Der Raspi 3 A+ ist aktuell für 23,83 EUR – auch sehr interessant – zu haben. Ab 80 EUR Portofrei, sonst 3,95 EUR. Zahlung auch mit PayPal und auf Rechnung, bei Vorkasse sogar 2% Rabatt.

2. microSD-Karte vorbereiten


Das System wird aktuell mit dem rpi-imager auf eine microSD-Karte übertragen. (Die Verwendung von Etcher wird nicht mehr empfohlen.) Das aktuelle Image kann ausgewählt und direkt auf eine microSD-Karte geschrieben werden.

https://www.raspberrypi.org/downloads/

Raspberry Pi Imager Windows https://downloads.raspberrypi.org/imager/imager_1.4.exe
Raspberry Pi Imager macOS https://downloads.raspberrypi.org/imager/imager_1.4.dmg
Raspberry Pi Imager Ubuntu https://downloads.raspberrypi.org/imager/imager_1.4_amd64.deb

rpi-imager installieren für Ubuntu und alle Debian-basierten Derivate

Copy to clipboard
# dpki -i imager_1.4_amd64.deb


- bei Fehlermeldungen während der Installation nachfolgenden Befehl

Copy to clipboard
# apt install -f # rpi-imager


Empfehlung Rasbberry Pi OS (Other) –> Rasbberry Pi OS Lite (32-bit) ohne grafische Oberfläche
mit Write – Warnung – alle Daten auf dem Zieldatenträger werden überschrieben! ausführen
nach wenigen Minuten (zwei) ist das Image heruntergeladen und installiert (schnelle Internetverbindung vorausgesetzt)

Copy to clipboard
$ sudo rpi-imager QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' QObject::setParent: Cannot set parent, new parent is in a different thread mountutils: Reading /proc/mounts mountutils: Closing /proc/mounts Sector size: 512 Device size: 31914983424 Try to perform TRIM/DISCARD on device BLKDISCARD successful Hash of uncompressed image: "3fe88721668543899fc8de9168bed798bdaa795b5a403f0332d7731b0afbaaa3" Write done in 89 seconds Verify done in 26.847 seconds Verify hash: "3fe88721668543899fc8de9168bed798bdaa795b5a403f0332d7731b0afbaaa3" Writing first block (which we skipped at first) mountutils: Reading /proc/mounts mountutils: Closing /proc/mounts


Karte auswerfen, entnehmen, neu einlegen

Man kann auch ältere Images auf microSD-Karte kopieren. Dafür muss das passende Image nicht entpackt werden (Downloads – siehe 99. gute Links). Die heruntergeladene zip-Datei wird direkt verarbeitet und muss nicht entpackt werden. Das ist sehr praktisch und spart viel Speicherkapazität. Der Menüpunkt Use custom – Select a custom .img from your computer suggeriert etwas anderes, also dass man die img-Datei zuerst entpacken müsste.

3. ssh und WLAN aktivieren


auf der Karte die boot – Partition öffnen
Datei mit dem Dateinamen – ssh – ohne Inhalt anlegen

Die Entwicklerboards Pi Zero W oder Pi 3A+ besitzen kein Ethernet. Deshalb ist es um so wichtiger, das WLAN zu aktivieren! Dafür muss nachfolgende Datei konfiguriert werden.

Datei wpa_supplicant.conf direkt in der boot – Partition anlegen. beispielhafter Inhalt (das Password stimmt natürlich nicht!):

Datei wpa_supplicant.conf in der Boot-Partition (Raspbian Stretch)

Copy to clipboard
country=DE ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="Cookie Gast" psk="Password" key_mgmt=WPA-PSK }


Hinweis:
Die Datei ssh wird mit dem Start gelöscht. Die Aktivierung von ssh erfolgt einmalig! Wichtig: ssh unter Pkt. 4 aktivieren!

Auch die Datei wpa_supplicant.config im root wird durch das System einmalig verarbeitet und nach /etc/wpa_supplicant/wpa_supplicant.conf in der root-Partition verschoben. Wichtig für eine Fehlersuche nach dem ersten Start.

4. nach dem Erststart mit ssh verbinden


IP-Adresse des RasPi ermitteln

Copy to clipboard
$ sudo nmap -sP 192.168.178.0/24 : Nmap scan report for 192.168.178.124 Host is up (0.052s latency). MAC Address: B8:27:EB:D7:8F:5E (Raspberry Pi Foundation) :

Copy to clipboard
$ ssh pi@192.168.178.124


Standardkennwort: raspberry
(möglicherweise englische Tastatur beachten, also z => y)

5. Erstkonfiguration nach dem Start

Copy to clipboard
$ sudo raspi-config 1 Passwort ändern 2 Netzwerk - Netzwerkname ändern 3 Boot-Optionen - B1 Desktop/CLI - B1 Console 4 Lokalisation - I1 Change Locale - [*] de_DE.UTF-8 UTF-8 4 Lokalisation - I3 Keyboard - Deutsch 5 Interface Options - P2 ssh aktivieren!!! 7 Advanced Options - A1 Dateisystem auf die gesamte Karte erweitern


Alle weiteren Einstellungen nach Bedarf.

bspw. Anpassung der ~/.bashrc - alias ll='ls -laF ...'

An dieser Stelle wird ein erster Neustart empfohlen.

bei falscher Tastatur-/Länderkonfiguration auf cli-Ebene wiederholen

Copy to clipboard
$ sudo dpkg-reconfigure locales $ sudo dpkg-reconfigure keyboard-configuration

6. statische IP-Adresse festlegen (ab Debian 10 – buster)


für Server, Internetradio, … empfohlen
IPv6 deaktivieren

Copy to clipboard
$ sudo nano /etc/sysctl.conf - nachfolgende Zeile ergänzen : # added by BeM 2020-07-24 net.ipv6.conf.all.disable_ipv6 = 1 :


# um die Einstellung direkt zu aktivieren

Copy to clipboard
$ sudo sysctl -p


# Kontrolle mit

Copy to clipboard
$ ip addr show


NEU für statische IP-Adresse

Copy to clipboard
$ sudo nano /etc/dhcpcd.conf # Example static IP configuration: # all duplicate lines BeM 2020-07-24 #interface eth0 interface wlan0 #static ip_address=192.168.0.10/24 static ip_address=192.168.178.133/24 #static ip6_address=fd51:42f8:caae:d92e::ff/64 #static routers=192.168.0.1 static routers=192.168.178.1 #static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1 static domain_name_servers=192.168.178.1 1.1.1.1

7. wpa-conf schützen

Copy to clipboard
/etc/wpa_supplicant/wpa_supplicant.conf


Rechte der WiFi-Konfiguration anpassen und somit vor unberechtigten Blicken schützen. Nur root als Eigentümer darf diese lesen und ändern! Sollte bereits so richtig sein.

Copy to clipboard
$ sudo chmod 600 /etc/wpa_supplicant/wpa_supplicant.conf


Wenn alles funktioniert hat kann man sich, nach einem Neustart, auf die fest vergebene IP verbinden und das System aktualisieren.

Copy to clipboard
$ sudo apt update $ sudo apt upgrade


Ein System-Backup ist keine schlechte Idee, bevor man das System für den tatsächlichen Eisatzzweck weiter konfiguriert.