OpenSuse auf dem RasPi zu installieren, mag eine ungewöhnliche Wahl sein, doch für viele Szenarien ist es eine ausgezeichnete.
Die Raspberry Pi Foundation liefert zum scheckkartengroßen Bastelrechner das Raspberry Pi OS (früher: Raspbian), ein Debian-basiertes System, das auf den Mini-PC abgestimmt ist. Als OpenSuse-Anwender installieren Sie stattdessen Ihre gewohnte Distribution auf dem RasPi (Abbildung 1), denn die Rolling-Release-Variante Tumbleweed unterstützt inzwischen Raspberry-3- und Raspberry-4-Geräte.

Abbildung 1: Die Desktop-Distribution OpenSuse inklusive Admin-Tool YaST läuft auf einem RasPi 4 mit 2 GByte RAM (937 MByte frei mit LXQt-Desktop) in erträglicher Performance.
Vorgebacken
Genau wie bei Raspberry Pi OS liegen fertige Images vor, die Sie lediglich auf die Micro-SD-Karte zu schreiben brauchen. Nach dem Einlegen bootet ein vorinstalliertes System. Da es keinen Installer gibt, der es ermöglicht, die Desktop-Umgebung zu wählen, stehen Images mit Gnome, KDE, Enlightenment, LXQt und Xfce bereit. Außerdem gibt es noch eine “JeOS” (“just enough OS”) genannte Variante mit einer Konsolenschnittstelle und minimalem X11-System ohne Desktop-Umgebung. Bei diesem ist es möglich, grafische Programme über SSH zu starten.
Die Redaktion empfiehlt die LXQt-Version: Die Desktop-Umgebung arbeitet auf dem Mini-PC relativ flüssig, bietet aber dennoch einigen Komfort sowie Funktionen, in denen sich sowohl KDE-Anwender als auch Linux-Einsteiger gleich zurechtfinden. Unabhängig vom vorinstallierten Desktop stehen für OpenSuse auf dem RasPi die aus der Desktop-Distribution bekannten Pakete bereit, darunter das Tool YaST für die Administration des Systems.
Im Download-Verzeichnis [1] liegen verwirrend viele Dateien, die jedoch in Bezug auf den Namen einem simplen Schema folgen (Listing 1). Nur bei den Dateien, die auf raw.xz enden, handelt es sich um Images für die Installation.
Listing 1
openSUSE-Tumbleweed-ARM-<I>Desktop<I>-raspberry<I>Version<I>-aarch64-<I>Datum<I>-Snapshot<I>Nummer<I>.raw.xz
Achten Sie darauf, Dateien mit dem Namensbestandteil raspberry3 oder raspberry4 zu wählen, je nach Typ des Geräts. Nach dieser Vorauswahl suchen Sie sich die gewünschte Desktop-Umgebung. Das Kürzel E20 entspricht Enlightenment. Wie erwähnt, existieren zusätzlich noch JeOS-Images ohne grafische Umgebung und solche mit blankem X11, also einer grafischen Umgebung für die Remote-Ausführung oder das Nachinstallieren eines Desktops.
Am schnellsten übertragen Sie das Image per Kommandozeile auf die SD-Karte. Dazu ist es aber nötig, die Gerätedatei (/dev/sdc oder ähnlich) zu kennen, die zur SD-Karte gehört. Starten Sie dazu als Root auf der Konsole journalctl -f, stecken Sie dann den Kartenleser mit dem Medium an. Suchen Sie eine Meldung in der Form SD Name des Herstellers (Abbildung 2). Merken Sie sich den Namen des Device-Files, der in eckigen Klammern zu sehen ist.

Abbildung 2: Mit etwas Übung finden Sie in der Ausgabe von journalctl -f den Namen der Gerätedatei (hier sdg) einer gerade angeschlossenen Speicherkarte.
Dann übertragen Sie das heruntergeladene Image als Root mit dem Befehl aus Listing 2. Wenn wieder die Eingabeaufforderung erscheint, ist der Transfer abgeschlossen. Dann entnehmen Sie die Karte und stecken sie in den RasPi.
Listing 2
xzcat Image-Datei | dd bs=4M of=Gerätedatei iflag=fullblock oflag=direct status=progress; sync
Geduldsfrage
Alle OpenSuse-Varianten strapazieren beim Systemstart die Geduld: Das Laden des Kernels und der Initial Ramdisk dauern auf einem RasPi 4 rund zwei Minuten, bis zur Login-Meldung dauert es noch einmal rund 90 Sekunden. Die LXQt-Umgebung startet dann allerdings in 15 Sekunden, und nach dem Start ist auf dem Mini-PC mit 2 GByte RAM noch etwa ein GByte Arbeitsspeicher für Anwendungen frei (Abbildung 1).
Dabei sieht die LXQt-Oberfläche für eine leichtgewichtige Umgebung halbwegs modern aus. KDE-Anwender dürften sich zu Hause fühlen, obwohl der Desktop natürlich weniger Funktionen und Einstellungsmöglichkeiten bietet.
Nach dem Start müssen Sie sich zunächst mit dem Benutzernamen root und dem Standard-Passwort linux für OpenSuse-Images einloggen. Die grafische LXQt-Oberfläche startet dann als Root – ausnahmsweise, bis Sie den ersten Benutzer angelegt haben.
Das YaST-Übersichtmodul (Kategorie Settings im Startmenü) startet zügig. Die eigentlichen Module, etwa zum Verwalten der Software, fordern die CPU, funktionieren aber genau wie auf dem Desktop-System. Zuerst brauchen Sie das User and Group management (Abbildung 3) zum Anlegen eines nicht-privilegierten Benutzer-Accounts. Es genügt, dort einen Full Name, Username sowie zweimal das Passwort einzugeben.

Abbildung 3: Systemadministration mit YaST: Zum Anlegen eines Benutzer-Accounts brauchen Sie nur Name und Passwort anzugeben.
Das Root-Passwort verändern Sie am einfachsten auf der Konsole: Hier sind Sie bereits als Root angemeldet. Geben Sie passwd ein und dann zweimal Ihr neues Root-Passwort. Melden Sie sich nun im Startmenü ab. Im Anmelde-Dialog ist der eben anlegte Benutzer zu sehen. Melden Sie sich mit diesem Account neu an.
Nun läuft die grafische Umgebung wie es sich gehört mit den Rechten des Benutzers und nicht mit denen des Administrators, allerdings noch in englischer Sprache. Dies ändern Sie im YaST-Modul Language, indem Sie als Primary Language German – Deutsch wählen und die Kästchen Adapt Keyboard Layout to German und Adapt Time Zone to Europe/Germany aktivieren.
Die Installation der zahlreichen Sprachpakete dauert auf dem Minirechner eine Weile, läuft aber, ohne dass Sie sich weiter darum zu kümmern brauchen, reibungslos ab. Das Gleiche gilt für das YaST-Modul Software, welches ebenfalls das Language-Modul zur Installation der Sprachen startet.
Wer sich nicht in die Systemadministration von der Kommandozeile aus einarbeiten möchte, kommt mit YaST und etwas Geduld also stets zum Ziel. Dennoch mag es auf dem RasPi sinnvoll sein, die YaST-Kommandozeilen-Version mit sudo yast auf der Konsole zu starten (Abbildung 4).

Abbildung 4: Die Konsolenversion von YaST bildet die Oberfläche der grafischen Variante deutlich nach.
Wer die Befehle zypper in <Paketname>, zypper rm <Paketname> und zypper se <Paketname> kennt, installiert, entfernt und sucht damit Pakete auf der Kommandozeile. Das geht nicht nur auf dem RasPi schneller als mit dem zwar leistungsfähigen, aber sperrigen Modul Software von YaST. Außerdem führen Sie die Befehle leicht über SSH aus.
Eine SSH-Verbindung zum Rechner ist übrigens gleich nach dem Start des Systems möglich, falls er an einem Netzkabel hängt. Das ermöglicht es, ihn ohne jemals einen Bildschirm anzuschließen zu administrieren. Seine IP-Adresse finden Sie etwa über den Router heraus, in der FritzBox zum Beispiel unter Heimnetz/Netzwerk. Geben Sie beim Anmelden per SSH die Option -X an (zum Beispiel ssh -X 192.168.0.23 ), dann haben Sie die Möglichkeit, grafische Anwendungen wie YaST (yast2 nach Login als Root) von der Kommandozeile zu starten.
Eine WLAN-Verbindung herzustellen, gelingt wie vom Laptop her bekannt, mithilfe des Netzwerk-Icons in der Taskleiste. Ein älterer Artikel beschreibt, wie Sie diese Aufgabe ohne angeschlossenen Bildschirm mit dem Kommandozeilen-Werkzeug Nmcli bewältigen [2].
Mini-Server
Profis administrieren Linux-Server grundsätzlich per Konsole, um keinen RAM zu verschwenden. Diese OpenSuse-Tipps folgen dagegen dem Ansatz, für grafische Werkzeuge wie YaST eine leichtgewichtige GUI-Umgebung zu nutzen. Die Desktop-Umgebung startet bei den OpenSuse-RasPi-Images nur bei Bedarf nach einem Login, belegt also im Serverbetrieb keinen Arbeitsspeicher.
GUI-basierte Programme starten Sie dann immer noch remote per SSH vom Linux-Desktop aus. Wenn Sie mit den beiden folgenden Anleitungen den RasPi als Werbeblocker Pi-Hole und als Tor-Proxy für anonymes Surfen einrichten, ist es gleich, ob Sie die wenigen Befehle in einem Terminal direkt auf dem RasPi ausführen, oder ob Sie nach einem SSH-Login mit der Option -X diese vom Desktop aus starten.
Für die Installation des Werbeblockers Pi-Hole (Abbildung 5) [3] verwenden Sie am einfachsten ein auf Github erhältliches Skript [4], das nach dem Start mit Dialogen durch die Installation führt (Abbildung 6). Dieser Installer benötigt das im LXQt-Image von OpenSuse nicht vorinstallierte Paket zenity. Da es ohnehin als Root auszuführen ist, loggen Sie sich mit diesem als Administrator ein.

Abbildung 5: DNS-Anfragen zu bekannten Werbedomains laufen im Pi-Hole ins Leere, das heißt, der Werbeblocker gibt für sie absichtlich ungültige IP-Adressen zurück.

Abbildung 6: Ausführliche Dialoge leiten im Pi-Hole-Installer von Gertjan Lettink selbst Linux-Einsteiger zum Ziel.
Schnell installiert
Installieren Sie dann Zenity mit zypper in zenity. Sie können stattdessen als Root mit yast2 das gewohnte Verwaltungswerkzeug benutzen und das Paket über das Modul Softwareverwaltung installieren. Mit den Befehlen aus Listing 3 laden Sie dann das Skript herunter, machen die Datei ausführbar und starten sie.
Listing 3
wget https://gitlab.com/knurpht/pihole-installer/-/raw/master/pihole-docker-install.sh chmod +x pihole-docker-install.sh ./pihole-docker-install.sh
Nach der Begrüßung wählen Sie im nächsten Dialog als Distribution openSUSE und dann den Script-Mode Install und nennen das Root-Passwort. Dann installiert das Skript die Pakete für den Container-Dienst Docker [5], was auf dem RasPi länger dauert, als die Zeit, die das Skript nennt. Nach der Erfolgsmeldung startet die Konfiguration die Pi-Hole-Server mit der Frage nach der IP-Adresse des RasPis.
Im Eingabefeld ist die gegenwärtige IP-Adresse des RasPis bereits eingetragen, die Sie sich merken sollten. Normalerweise vergeben Router nach dem Neustart desselben Geräts wieder die gleiche IP. In der FritzBox können Sie unter Heimnetz | Netzwerk in der Geräteliste im Eintrag für Ihren Mini-PC per Klick auf das Stift-Icon sicherheitshalber das Kontrollkästchen Diesem Netzwerkgerät immer die gleich IPv4-Adresse zuweisen aktivieren.
Bei der folgenden Abfrage nach dem Dateipfad für den Docker-Container (Enter path for your Pihole docker configs) gibt es keinen Grund, vom Vorgabewert abzuweichen. Danach folgt eine Abfrage für die Ports für HTTP und HTTPS, unter denen das Backend für die Konfiguration von Pi-Hole zu erreichen ist.
Planen Sie auf dem Rechner keinen weiteren Webserver, ist es am einfachsten, hier statt der vom Installer vorgeschlagenen Werte 8081 und 4443 die Standard-Ports 80 und 443 zu nennen. Dann brauchen Sie in die Adressleiste des Browsers nur die RasPi-IP gefolgt von /admin einzugeben, um zum Backend zu gelangen (Abbildung 7).
![Abbildung 7: So sieht die Startseite eines noch nicht genutzten Pi-Hole-Servers aus. Details zur (meist nicht erforderlichen) Konfiguration erläutert seine Dokumentation <a href="#artRef-i6">[6]</a>.](/wp-content/uploads/2020/08/b07-dashboard-300x224.jpg)
Abbildung 7: So sieht die Startseite eines noch nicht genutzten Pi-Hole-Servers aus. Details zur (meist nicht erforderlichen) Konfiguration erläutert seine Dokumentation [6].
Es folgen noch einige Informationen sowie die Möglichkeit, ein Passwort für das Administrations-Backend zu setzen. Die Frage, ob Sie Pi-Hole als DHCP-Server nutzen möchten (Do you want to use the Pihole server for DHCP), verneinen Sie, wenn Sie nicht ohnehin wissen, was es damit auf sich hat. Pi-Hole funktioniert ohne diese Option uneingeschränkt.
Bestätigen Sie dann, dass der Rechner den Pi-Hole-Docker-Container, also die eigentliche Installation, nun herunterlädt (Pihole docker container being pulled now), und warten Sie, bis der Fortschrittsbalken im folgenden Dialog aufhört zu pulsieren und einen Wert von 100% anzeigt. Klicken Sie erst dann auf OK.
Ein Info-Dialog nennt abschließend noch einmal die URLs für das Admin-Backend plus Kennwort, die Ports, die die Firewall durchlassen muss und die IP-Adresse, die Sie als DNS-Server angeben, damit Pi-Hole überhaupt eine Wirkung zeigt. Dazu später mehr. Die Firewall ist auf dem Pi derzeit noch inaktiv. Wenn Sie sie später zuschalten, müssen Sie auf die hier genannten Port-Freigaben achten.
Navigieren Sie mit dem Browser zur mit http:// beginnendem URL aus dem letzten Info-Dialog. Wenn Pi-Hole läuft, sehen Sie die Dashboard-Seite aus Abbildung 7. Der Aufruf per HTTPS hat im Test nicht funktioniert. Das spielt so lange keine Rolle, wie Sie das Backend nur im LAN der Firewall des Routers aufrufen. Tatsächlich funktioniert der Werbefilter out of the box mit einer vorkonfigurierten Liste an Werbedomains tadellos. Diese halten Sie im Backend unter Tools Update Gravity aktuell.
Adressbuch
Bisher ist der Werbeblocker aber noch ohne Wirkung: Damit er greift, nutzen Sie ab jetzt den Rechner wie erwähnt auf dem Desktop-PC oder dem Laptop als DNS-Server. Ein DNS-Server löst Domains wie linux-user.de in die zugehörige IP-Adresse (195.122.146.141) auf. Erst dann kann der Browser die Seite abrufen.
Der Trick bei Pi-Hole als DNS-Server ist, dass er für alle ihm bekannten Werbe-Domains die ungültige IP-Adresse 0.0.0.0 liefert, die dem Browser keine Daten übergibt. Der Vorteil dieser Methode ist, dass nur wenig Traffic über den schwachbrüstigen Scheckkartenrechner läuft. Mit dem eigentlichen Seitenaufruf oder gar einem Datei-Download hat er nichts zu tun.
Um Pi-Hole als DNS-Server auszuwählen, klicken Sie auf das Netzwerk-Manager-Symbol in der Taskleiste und dann auf das Icon Netzwerke bearbeiten im ausgeklappten Dialog (Abbildung 8). Gehen Sie im Reiter IPv4 zu Kabelgebundene Verbindung 1, wenn der Rechner per Netzwerkkabel angeschlossen ist. Ansonsten wählen Sie statt Kabelgebundene Verbindung 1 Ihr WLAN.

Abbildung 8: Um den Pi-Hole-DNS-Server auf einem PC oder Notebook zu nutzen, schränken Sie die Wirkung der automatischen Netzwerk-Konfiguration auf “nur Adressen” ein (oberes Feld) und geben als DNS-Server die IP-Adresse des Raspberrys an.
Wählen Sie im Dropdown für die Methode Automatisch (nur Adressen), und nennen Sie die IP-Adresse des RasPis als DNS-Server. Im Reiter IPv6 verändern Sie nur die Methode zu Automatisch (nur Adressen), geben aber keinen DNS-Server an: Der von uns benutzte Installer hat der Pi-Hole-Software keine IPv6-Adresse eingerichtet, der Mini-PC stellt also keinen über IPv6 erreichbaren DNS-Server bereit.
Das macht aber nichts, denn der im Reiter mit einer IPv4-Adresse eingetragene DNS-Server liefert IPv6-Adressen. Der Rechner ist also voll IPv6-tauglich, außerdem geht dem Werbefilter in dieser Konfiguration keine zu blockende Domain durch die Lappen.
Tarnkappe
Allein das Blocken der Werbung beim Surfen hilft, die im Internet hinterlassene Datenspur einzudämmen: Da wenige große Werbenetzwerke inzwischen auf den meisten Internetseiten präsent sind, bringen Sie Seitenaufrufe mit der gleichen IP-Adresse in Verbindung und legen so umfangreiche Profile an.
Die Anonymisierungssoftware Tor [7] verschleiert die eigene IP. Ein RasPi eignet sich gut als Tor-Proxy, sprich als Knoten beim Browsen. Dies erspart es, Tor auf jedem Rechner zu installieren. Zu bedenken ist allerdings, dass der hier vorgestellte Ansatz, Firefox über einen sogenannten Socks-Proxy zu betreiben, Schwachstellen aufweist, also keine belastbare Anonymität garantiert.
Das beginnt damit, dass die DNS-Anfragen, die uns schon beim Werbeblocker begegnet sind, nicht über die Tor-Anonymisierung laufen. Zumindest der Anbieter des DNS-Diensts, meist Ihr Internet-Provider, kann die Seitenaufrufe weiterhin Ihrem Anschluss zuordnen, die Werbenetzwerke allerdings sehen die wahre IP-Adresse nicht.
Das hilft allein wenig, wenn die beim letzten Seitenaufruf gesetzten Cookies noch im Browser gespeichert sind: Tor allein kann das Surfen nicht in der Weise anonymisieren, dass sich die Aufrufe von Seiten nicht zu einem Profil verknüpfen lassen, es sei denn, Sie löschen vorher die Browser-Cookies. Dies nimmt Ihnen bei Bedarf das Komplettpaket Tor-Browser von den Tor-Entwicklern ab [8].
Für einen nicht durchgängig anonymisierenden, dafür aber mit ein paar Klicks auf jedem Rechner im LAN verfügbaren Tor-Proxy installieren Sie auf dem RasPi zunächst das Paket tor, etwa mit sudo zypper in tor auf der Kommandozeile. Dann editieren Sie als Root die Datei /etc/tor/torrc. Auf der Kommandozeile gelingt dies mit dem Editor Nano, den Sie mit zypper in nano in ein paar Sekunden installiert haben.
Öffnen Sie die Datei mit sudo nano /etc/tor/torrc. Sie sehen die Textdatei nun auf der Konsole und navigieren darin mit den Pfeiltasten, löschen Text oder tippen wie in einem Ihnen vielleicht geläufigeren Editor mit grafischer Oberfläche.
Suchen Sie die Zeile #SOCKSPort 192.168.0.1:9100 # Bind to this address:port too. (Zeile 19). Entfernen Sie das Rautezeichen am Beginn, und verändern Sie die auf SOCKSPort folgende IP-Adresse mit nach einem Doppelpunkt folgender Portnummer in 0.0.0.0:9100, um den Tor-Proxy auch außerhalb des Scheckkartenrechners bereitzustellen. Zum Anwenden der Änderungen starten Sie Tor mit sudo systemctl tor neu.
Um Tor in Firefox auf Ihrem Desktop einzubinden, öffnen Sie die Firefox-Einstellungen (Hamburger-Icon ganz rechts oben). Scrollen Sie ganz nach unten zur Rubrik Verbindungs-Einstellungen, und klicken Sie auf den Button Einstellungen. Wählen Sie die Option Manuelle Proxy-Konfiguration und tragen die IP-Adresse des RasPis im Feld SOCKS-Host ein, als Port dahinter 9100 wie in der Tor-Konfiguration.
Um später zwischen dem meist deutlich langsameren Surfen via Tor und dem direkten Internetzugriff zu wechseln, brauchen Sie nur zwischen den Optionen Manuelle Proxy-Konfiguration und der Standardeinstellung Proxy-Einstellungen des Systems verwenden umzuschalten. Die SOCKS-Host-Daten vergisst Firefox dabei nicht. Zum Testen, ob die Tor-Tarnkappe funktioniert, navigieren Sie zur URL https://check.torproject.org (Abbildung 9).

Abbildung 9: Die Seite check.torproject.org prüft, ob der Browser tatsächlich über Tor auf das Internet zugreift.
Fazit
Die OpenSuse-Anwendern vertraute Desktop-Distribution existiert inzwischen in einer Fassung für RasPi 3 und RasPi 4 (nur OpenSuse Tumbleweed und bald OpenSuse 15.2). Das Booten dauert deutlich länger als bei Raspberry Pi OS [9], die Performance nach dem Start ist aber ähnlich: Sprich, das Arbeiten mit dem Desktop strapaziert die Geduld, doch als Mini-Server ist OpenSuse gut geeignet. Hier stört es auch nicht, dass OpenSuse das Raspberry-Sound-Device nicht unterstützt. (agr)
Infos
-
OpenSuse-Image für den RasPi: http://download.opensuse.org/ports/aarch64/distribution/leap/15.2/appliances/
-
NetworkManager-CLI: Christoph Langner, “Netz per Text”, LU 11/2018, S. 34, https://www.linux-community.de/41854
-
Pi-Hole: https://pi-hole.net
-
Pi-Hole Installer: https://gitlab.com/knurpht/pihole-installer/-/raw/master/pihole-docker-install.sh
-
Docker: https://www.docker.com
-
Pi-Hole-Handbuch: https://docs.pi-hole.net
-
Tor-Browser: https://www.torproject.org/de/download/
-
Raspberry Pi OS: https://www.raspberrypi.org/downloads/





