Ein Linux-Rechner lässt sich ohne physischen Zugriff administrieren, wenn Sie ihn via Netz erreichen. Hat er zudem eine USB-Buchse, gelingt sogar eine Remote-Installation.
An den Tausenden Rechnern in den Racks eines Rechenzentrums hängt bekanntlich kein Monitor. Linux eignet sich als Server-OS gut für den bildschirmlosen oder Headless-Betrieb. Auch der OpenSuse-Installer enthält die Technik für eine Remote-Installation per VNC. Damit sie ohne Benutzerinteraktion starten kann, lässt sich das offizielle Installationsabbild mithilfe des Skripts Mksusecd ohne großen Aufwand dafür präparieren. Dabei setzen Sie unter anderem ein eigenes Passwort für den Fernzugriff. Darum stehen solche Images nicht fertig zum Herunterladen bereit. Sie müssen sie mit einigen Handgriffen selbst erstellen.
Wegen des geringen Stromverbrauchs erfreut sich der Raspberry Pi als Server großer Beliebtheit. Praktisch ist dabei außerdem, dass Sie dazu lediglich das offizielle, Debian-basierte Betriebssystem an Ihrem PC auf eine Speicherkarte zu übertragen brauchen. Nach dem Einlegen der Karte lässt sich der Winzling direkt in Betrieb nehmen. Dementsprechend kommen Sie während der Installation ebenfalls ohne eigenen Bildschirm für den RasPi aus.
Fernsteuerung
Zwar gelingt es mit jeder Art von Linux, eine Festplatte in einen anderen Rechner einzubauen und dort ein System zu installieren. So komfortabel wie das Umstecken einer Flash-Speicherkarte fällt das jedoch nicht aus. Deswegen unterstützt der OpenSuse-Installer seit Langem eine Remote-Installation per VNC (Abbildung 1): Hier bleibt die Festplatte im ersten Computer. Ein Fernzugriffsfenster steuert die Installation von einem zweiten Rechner aus.

Abbildung 1: Nur wer genau hinsieht, bemerkt bei diesem Screenshot überhaupt, dass die abgebildete Installation per VNC über das Netzwerk gesteuert wird.
Allerdings müssen Sie für eine Remote-Installation am Boot-Screen die Option vnc=1 eingeben und mit VNCPassword ein Passwort setzen. Ohne Tastatur und ohne Bildschirm dürfte Ihnen das kaum gelingen. Zum Glück gibt es in den Standard-Repositories von OpenSuse mit dem Paket mksusecd ein einfach zu bedienendes Skript, das gestattet, die originale OpenSuse-Installations-DVD so anzupassen, dass sie ganz ohne Tastatureingabe direkt die VNC-Installation anstößt.
Laden Sie dazu zuerst ein OpenSuse-Installationsmedium herunter [1]. Leap eignet sich aufgrund besserer Stabilität eher für den Server-Betrieb als Tumbleweed. Das liegt unter anderem daran, dass hier nicht unangekündigt Server-Komponenten wie PHP plötzlich nach dem Einspielen von Updates in einer höheren Version vorliegen. Das beschriebene Verfahren ist aber keineswegs auf Leap-Abbilder beschränkt. Es klappt auch mit dem wesentlich kleineren Network-Image, das die zu installierenden Programmpakete bei jedem Einsatz aus dem Internet zieht.
Erweitern Sie Ihr Desktop-System zunächst um das Paket mksusecd. Um ein Installationsabbild für den Einsatz auf UEFI-Geräten (Abbildung 2) vorzubereiten, genügt es, eine neue ISO-Datei vnc_install.iso zu erstellen (Listing 1, erste Zeile). Das ISO gleicht der Original-DVD bis auf die Tatsache, dass sie mit den per --boot genannten Parametern vnc und VNCPassword startet.

Abbildung 2: Viele heute genutzte Rechner mit UEFI-Firmware unterstützen das alte BIOS-Format noch als Compatibility Support Module (CSM). Bei der Einstellung UEFI First startet ein für beide Betriebsarten ausgelegter OpenSuse-Installer-USB-Stick im UEFI-Modus.
Listing 1
vnc_install.iso
$ sudo mksusecd -c vnc_install.iso --boot "vnc=1 VNCPassword=12345678" openSUSE-Leap-15.4-DVD-x86_64-Build243.2-Media.iso $ sudo mksusecd -c vnc_install.iso --boot "vnc=1 VNCPassword=12345678 ifcfg=eth0=192.168.0.2/24" openSUSE-Leap-15.4-DVD-x86_64-Build243.2-Media.iso
Haben Sie die Möglichkeit, auf dem Router die IP-Adresse des Rechners mit der laufenden Installation herauszufinden, können Sie via vncviewer IP-Adresse:1 die VNC-Verbindung aktivieren. Anschließend lässt sich OpenSuse wie gewohnt installieren (Abbildung 3). Vergessen Sie dabei nicht das Suffix :1: Es steht für das von VNC genutzte zweite X-Window-Display.

Abbildung 3: Können Sie auf dem Router nach dem Booten des Installer-USB-Sticks die Installation als vorher nicht vorhandenes Netzwerkgerät ausmachen, erfahren Sie hier die zugehörige IP-Adresse.
Können Sie die IP-Adresse des Installationsrechners nicht in Erfahrung bringen, legen Sie beim Neuerstellen des ISO-Images zusätzlich zu den bisherigen Parametern noch eine IP-Adresse fest, die selbstverständlich während der Installation nicht anderweitig belegt sein darf. Der gesamte -boot-Parameter lautet dann beispielsweise so wie in der zweiten Zeile von Listing 1. In diesem Beispiel steht die erste Netzwerkkarte mit der Adresse 192.168.0.2 für den VNC-Zugriff bereit. Das Suffix /24 legt die Netzmaske auf den für Heimnetzwerke üblichen Wert fest. Dabei haben Sie nur für die Zahl nach dem letzten Punkt (die Rechneradresse) freie Auswahl, der Rest muss so lauten wie zum Beispiel auf Ihrem Arbeitsrechner.
Bei Computern mit mehreren Netzwerkkarten oder zusätzlichem WLAN müssen Sie bei der Installation ohne Bildschirm die Netzwerkkarte zwingend explizit festlegen. Sonst fragt das Setup, welche Netzverbindung zum Einsatz kommen soll, was Sie ohne Tastatur und Bildschirm nicht beantworten können.
Starthilfe
Auf einem UEFI-System startet der Setup-Prozess erst nach einem Timeout von 60 Sekunden, auf einem BIOS-System allerdings ohne Benutzereingriff gar nicht: Hier ist der Startmenüpunkt Boot from Hard Disk eingestellt. Der angesteckte USB-Stick versucht also, ein bereits installiertes System zu starten, was in unserem Fall scheitert, da es ja noch keines gibt. Sie könnten lediglich versuchen, ohne Bildschirm zur richtigen Zeit auf einer angesteckten Tastatur [Pfeil-unten]+ und [Eingabe] zu drücken.
Um einen Installations-USB-Stick vorzubereiten, der auf UEFI-Systemen verzögerungsfrei startet und auf BIOS-Systemen ohne Tastatureingabe direkt die Installation anstößt, müssen Sie das Installer-ISO auspacken und die Bootloader-Konfiguration anpassen. An Mksusecd übergebene Parameter genügen hierfür nicht.
Erstellen Sie dazu zwei leere Verzeichnisse (Listing 2, erste Zeile) und hängen Sie zunächst das ISO-Image als nur-lesbares Dateisystem in das erste davon ein (Zeile 2). Kopieren Sie daraufhin den Inhalt mit in das zweite Verzeichnis, um die Daten verändern zu können (Zeile 3). Passen Sie dazu die Zugriffsrechte an (Zeile 4). Schließlich hängen Sie das ISO-Dateisystem wieder aus (Zeile 5). Falls der Plattenplatz knapp bemessen ist, können Sie das Original-ISO jetzt löschen.
Listing 2
ISO bearbeiten
$ mkdir Ordner_1 Ordner_2 $ sudo mount -o loop openSUSE-Leap-15.4-DVD-x86_64-Build243.2-Media.iso Ordner_1 $ cp -a -r Ordner_1/* Ordner_2 $ chmod -R u+w Ordner_2 $ sudo umount Ordner_1 $ mksusecd -c vnc_install.iso --boot "vnc=1 VNCPassword=12345678" Ordner_2
Für einen auf BIOS-Systemen ohne Tastatureingabe startenden Installer editieren Sie die Datei boot/x86_64/loader/isolinux.cfg im Ordner_2 und geben ihr den Inhalt aus Listing 3. Wenn Sie die Wartezeit von 60 Sekunden auf UEFI-Systemen vermeiden wollen, nehmen Sie sich die Datei EFI/BOOT/grub.cfg im Ordner_2 vor und vereinfachen sie wie in Listing 4 gezeigt.
Listing 3
Installer (BIOS-System)
default linux implicit 1 timeout 50 label linux kernel linux append initrd=initrd
Listing 4
UEFI-Wartezeit vermeiden
default=1
timeout=1
menuentry 'Installation' {
linux /boot/x86_64/loader/linux
initrd /boot/x86_64/loader/initrd
}
Nehmen Sie am besten einfach beide Änderungen vor, sodass das neue Installer-ISO sowohl auf BIOS- als auch auf UEFI-basierten Systemen problemlos startet. Sie erstellen Ihr präpariertes Installations-Image dann mit Mksusecd auf Basis des in Ordner_2 modifizierten Systems (Listing 1, letzte Zeile). Der vorangestellte Befehl sudo fällt dabei weg: Da Mksusecd nun keine Abbilddatei mehr einhängen muss, braucht es keine Root-Rechte.
Abschließen müssen Sie das ISO-Image vnc_install.iso nur noch mit dem Programm Imagewriter auf einen USB-Stick schreiben. Dazu genügt es, den Stick anzustecken, ihn in Imagewriter in der Liste unten auszuwählen und die ISO-Datei aus dem Dateimanager auf das Imagewriter-Fenster zu ziehen.
Ein bis zwei Minuten nach dem Booten vom Installationsmedium läuft ein VNC-Server, zu dem Sie sich wie in Abbildung 1 gezeigt von jedem anderen Rechner im Heimnetz aus verbinden können. Wie bei OpenSuse gewohnt, wartet der Installer zunächst auf die Sprachauswahl.
Richtig betrachtet
Installieren Sie für eine VNC-Verbindung im ersten Schritt TigerVNC auf dem Rechner, von dem aus Sie die Installation steuern. Praktisch alle Linux-Distributionen bringen das Tool als Paket mit, es gibt sogar Windows- und MacOS-Versionen [2]. Verbinden Sie sich dann mit vncviewer IP-Adresse:1 mit der Installation. Vncviewer fragt nach dem vorher an Mksusecd übergebenen Passwort. Die Warnung, dass die Verbindung nicht verschlüsselt erfolgt, dürfen Sie im Heimnetz getrost ignorieren – ändern lässt sich das hier ohnehin nicht.
Von nun an verhält sich das OpenSuse-Setup genauso, als würden Sie es direkt vom Rechner aus steuern, auf dem es abläuft. Klicken Sie sich bis zum Auswahlschirm für die Systemrolle durch (Abbildung 4). Die naheliegende Auswahl für einen Rechner ohne eigenen Bildschirm lautet Server. Die Beschreibung dieser Rolle erwähnt, dass sie wenige Pakete umfasst und nur ein Text-Interface installiert, also keine grafische Umgebung.

Abbildung 4: Für einen normalen Arbeitsrechner stellt der OpenSuse-Installer neben vier Desktop-Spielarten eine Server-Installation ohne grafische Oberfläche bereit.
Die Rolle Server öffnet nach außen lediglich den Firewall-Port für SSH-Verbindungen. Außerdem startet kein Display-Manager samt grafischem Login-Screen, was etwas Arbeitsspeicher spart. Vor allem läuft die schlanke Server-Installation viel schneller ab und belegt weniger Festplattenplatz. Eine Desktop-Installation funktioniert ebenfalls uneingeschränkt als Server. Sie können dann zudem grafische Programme im Heimnetz remote per SSH ausführen (Abbildung 5). Achten Sie bei der Auswahl einer anderen Rolle als Server darauf, in der folgenden Übersicht den SSH-Port für die Firewall zu öffnen.

Abbildung 5: Geben Sie bei der SSH-Verbindung den Parameter -Y an, können Sie auf der Kommandozeile des entfernten Rechners grafische Programme starten.
Die Rolle Transaktionaler Server ist noch recht neu. Sie richtet ein Server-System mit nur lesbarem Root-Dateisystem ein. Um es zu aktualisieren, müssen Sie stets den Weg über einen Neustart gehen: Das Update legt einen neuen Schnappschuss an, der nach einem Reboot aktiv und dann erneut ausschließlich lesbar ist. Das schützt die ausführbaren Dateien vor Manipulation durch Schadsoftware. Bis auf die häufiger nötigen Reboots sollte es keine funktionalen Unterschiede zum normalen Server geben.
Der letzte Screen des Installers kündigt den Neustart des Rechners an. Ziehen Sie den USB-Stick am Server jetzt ab. Daraufhin beendet der VNC-Server die Verbindung. Sollte das bereits passiert sein, entsteht trotzdem kein Schaden, wenn Sie den Stick nun entfernen und den Server per Reset-Knopf rebooten.
Teletext
Sobald der Server neu gestartet ist, bauen Sie mit ssh user@IP-Adresse eine SSH-Verbindung auf. SSH gilt als Standardtechnik für einen Remote-Zugriff auf Konsolenebene. Das für den grafischen Installer genutzte VNC dagegen beschränkt sich auf eine grafische Umgebung. Möchten Sie sich als der gerade auf dem Remote-Rechner aktive Benutzer einloggen, lassen Sie user@ im SSH-Aufruf weg. Starten Sie danach mit sudo yast das OpenSuse-Systemadministrationswerkzeug in seiner Konsolenversion (Abbildung 6). Mit ihr kommt jeder zurecht, der schon einmal mit dem grafischen Pendant gearbeitet hat.

Abbildung 6: Die Vielseitigkeit des OpenSuse-Administrationswerkzeugs YaST zeigt sich auch in seiner pseudografischen, der GUI-Version nachempfunden Konsolenoberfläche.
Per Tabulator navigieren Sie zwischen den Schaltflächen, Eingabefeldern und Unterfenstern. Einen Button in Textdarstellung betätigen Sie auf zwei unterschiedliche Arten: Zappen Sie per Tabulator, bis der gewünschte Schalter sich zur Kennzeichnung der Aktivierung türkis färbt, und drücken Sie [Eingabe]+. Alternativ drücken Sie das gelb hervorgehobene Tastenkürzel zusammen mit [Alt]+ – das geht deutlich schneller. Enthält eine Schaltfläche einen Pfeil nach unten, klappen Sie die zugehörige Auswahl mit [Pfeil-unten] aus.
Auch das Installieren von Software mit der pseudografischen YaST-Version erinnert stark an das Vorgehen bei der grafischen Variante. Viel komfortabler gelingt die Softwarepflege auf der Kommandozeile allerdings mit Zypper, dem eigentlichen Suse-Frontend für die Paketverwaltung: zypper se sucht nach Paketen, zypper if zeigt Infos wie die genaue Version oder eine Kurzbeschreibung zu einem Paket an. sudo zypper in installiert ein Paket, sudo zypper rm entfernt es wieder. Bei Paketnamen sorgt ein Druck auf [Tab] für eine Autovervollständigung des angefangenen Namens. sudo zypper up spielt die online vorliegenden Updates ein.
Ein Beispiel: Sie möchten Ihren Rechner als Webserver konfigurieren und dort WordPress hosten. Das verbreitete Content-Management-System läuft in den meisten Fällen unter einem LAMP-Stack. Eine solche Laufzeitumgebung für WordPress oder andere Webanwendungen einzubinden, funktioniert mit Zypper auf der Konsole mithilfe des Aufrufs sudo zypper in -t pattern lamp_server. Ein Pattern (deutsch: Schema) steht unter OpenSuse für eine Sammlung von Softwarepaketen, die man typischerweise zum Erfüllen einer bestimmten Aufgabe benötigt. Der Aufruf zypper patterns listet die verfügbaren Schemata auf.
Web-Plattform
Um den LAMP-Stack zu integrieren, genügt also die Installation des entsprechend benannten Schemas. Ganz vollendet ist das Setup damit aber noch nicht: Anders als Debian tendiert OpenSuse dazu, Server-Dienste initial nicht automatisch zu starten. Die Befehle sudo systemctl enable apache2 --now und sudo systemctl enable mariadb --now stoßen die beiden benötigten Dienste an. Letzterer aktiviert den MySQL-Fork MariaDB, der das Original unter Linux inzwischen weitgehend verdrängt hat.
Um die Datenbank in einen für einen Server sicheren Zustand zu versetzen, empfiehlt es sich, /usr/bin/mysql_secure_installation auszuführen. Dabei setzen Sie auf Aufforderungen ein Passwort für den Datenbankadministrator root, das dieser nicht vom gleichnamigen Linux-Superuser erbt. Außerdem beantworten Sie alle Vorschläge von mysql_secure_installation mit Ja und löschen so zum Beispiel den Testanwender und die Testdatenbank.
Den MySQL-Anwender root sollten Sie lediglich für administrative Aufgaben nutzen, nicht jedoch für den Zugriff von WordPress auf die Datenbank. Für Letzteres legen Sie einen Account mit eingeschränkten Rechten an. Starten Sie dazu MySQL als Root, was Sie an der Datenbank bereits als root authentifiziert. Dann legen Sie die Datenbank wordpress und einen gleichnamigen MySQL-User an (Listing 5, erste zwei Zeilen). Dem neuen Nutzer räumen Sie Schreibrechte für die WordPress-Datenbank ein (Zeile 3 und 4) und beenden dann MySQL mit \q.
Listing 5
MySQL konfigurieren
mysql> CREATE DATABASE wordpress; mysql> CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'GeheimesPasswort'; mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost'; mysql> FLUSH PRIVILEGES;
Nun brauchen Sie nur noch WordPress herunterzuladen [3], das ZIP-Archiv mit der Webanwendung mittels unzip wordpress-6.1.1-de_DE.zip zu entpacken und den dabei erzeugten Ordner wordpress/ als Root nach </srv/www/htdocs/ zu kopieren. Anschließend können Sie im Webbrowser innerhalb Ihres Heimnetzes unter Abbildung 7) und Datenbankname, Benutzername sowie das Datenbankpasswort vergeben. Ist Ihnen das alles gelungen, haben Sie eine ernst zu nehmende Aufgabe eines Systemadministrators gemeistert: Sie haben einen LAMP-Stack installiert und konfiguriert sowie eine Webanwendung darin eingerichtet.

Abbildung 7: Der Webserver, der WordPress ausliefern soll, funktioniert offensichtlich schon. Nun muss sich die Webanwendung noch mit der Datenbank verbinden.
Ähnlich einfach rüsten Sie Ihre OpenSuse-Server-Installation mit Zypper zu einem Dateiserver auf. Dazu installieren Sie mit sudo zypper in -t pattern file_server das entsprechende Schema. Details zur Einrichtung nennt die Suse-Dokumentation [4]. Das daraufhin verfügbare YaST-Modul Samba Server erleichtert die Einrichtung des Windows-kompatiblen Netzwerkprotokolls zum Teilen von Verzeichnissen im Netz. YaST aktiviert den Service, erstellt eine Grundkonfiguration und öffnet den Firewall-Port, damit sich der Dienst überhaupt von außerhalb des Rechners erreichen lässt.
Ein Blick in den Reiter Freigaben (Abbildung 8), den Sie im YaST-Modul für Samba über [Alt]+[E] ansteuern, zeigt, dass in der Ausgangskonfiguration bereits die Home-Verzeichnisse veröffentlicht sind. Ein Zugriff scheitert jedoch noch an den Rechten. Dafür müssen Sie mit sudo smbpasswd -u User für den Anwender, dessen Heimatverzeichnis Sie freigeben möchten, ein Passwort setzen. Danach können die Dateimanager von Gnome und KDE über die URL smb://Server-IP/users/User auf das vom Server im Netz geteilte Heimatverzeichnis des Anwenders zugreifen.

Abbildung 8: Gleich nach der Installation des Samba-Servers sind die Home-Verzeichnisse der Benutzer als Standardfreigaben aktiv. Mangels gesetztem Passwort bleibt der Zugriff allerdings vorerst blockiert.
Fazit
Nehmen Sie den eher geringen Aufwand auf sich, das offizielle OpenSuse-Installations-Image mit geeigneten Startparametern auszustatten, müssen Sie den Server für eine OpenSuse-Installation nicht mehr aus dem Keller schleppen, um Bildschirm und Tastatur anzuschließen. Vielmehr erlaubt das Booten von einem entsprechend präparierten USB-Stick, die Installation von einem anderen Rechner aus per VNC fernzusteuern.
Per SSH lässt sich ein Linux-Rechner bequem aus der Ferne administrieren. Unter OpenSuse steht dafür eine pseudografische Konsolenversion von YaST zur Verfügung. Mit Zypper steht außerdem eine Kommandozeilenschnittstelle für die Paketverwaltung bereit, die alle Funktionen des Software-Moduls von YaST erschließt. (csi)
Glossar
-
LAMP
-
Die vier Buchstaben stehen für Linux, den Webserver Apache, die Datenbank MySQL und die Skriptsprache PHP.
Infos
-
OpenSuse-Installer-DVD: https://get.opensuse.org/leap/15.4/
-
TigerVNC: https://sourceforge.net/projects/tigervnc/files/stable/1.13.1/
-
WordPress-Download: https://de.wordpress.org/download/
-
Samba-Handbuch: https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-samba.html





