Per VNC auf den Raspberry Pi schalten

Manchmal ist es nicht schlecht, wenn man sich mal kurz auf den Raspberry Pi per VNC draufschalten kann. Nun kann man zwar einfach einen VNC-Server wie TightVNC installieren, allerdings stellt dieser einen zusätzlichen virtuellen Bildschirm bereit. Ich möchte aber genau das sehen, was auch wirklich auf dem angeschlossenen Bildschirm dargestellt wird. Hierzu benötigt man das Paket x11vnc

Also:

sudo apt-get updatesudo apt-get install x11vnc

Und danach startet man das ganze einfach aus einer SSH-Sitzung heraus mit

x11vnc -usepw -forever -display :0

Die Option „-forever“ besagt, das der VNC-Server auch nach der Verbindungstrennung weiterläuft. Mit „-usepw“ wird man beim ersten Aufruf nach einem VNC-Kennwort gefragt. Das sollte man nun festlegen. Es hat mit dem Linux-Benutzerpasswort nichts zu tun. Hier geht es um das Passwort, das man beim Verbindungsaufbau in seinem VNC-Client eingeben muss. Ein Readonly-Kennwort muss man nicht vergeben.

Der Verbindungsaufbau zum VNC-Server ist nun so lange möglich, wie die aktuelle SSH-Session läuft bzw. so lange bis man mit Strg + C den Server beendet hat.

Um eine Verbindung aufzubauen benötigt man einen beliebigen VNC-Client, den es für fast alle Betriebssysteme gibt. Der Verbindungsaufbau erfolgt dann zur IP vom Raspberry Pi gefolgt von der Portnummer 5900. Also z.B. zu 192.168.178.25:5900

Manchmal wäre es schön, wenn der VNC-Server automatisch nach der User-Anmeldung gestartet werden würde. Hierzu erstellt man eine Autostart-Datei namens /home/pi/.config/autostart/X11VNC.desktop

mit folgendem Inhalt:

[Desktop Entry]
Type=Application
Name=X11VNC
Exec=x11vnc -usepw -forever -display :0
StartupNotify=false

Und nach einem Neustart vom Raspberry Pi wird nun nachdem sich der Benutzer angemeldet hat, automatisch der VNC-Server gestartet.

Nun kann es aber auch sinnvoll sein, das der VNC-Server noch vor der Benutzeranmeldung gestartet wird. Auch das geht. Zunächst muss man das VNC-Passwort an zentraler Stelle ablegen:

sudo x11vnc -storepasswd /etc/x11vnc.pass

Dann legen wir eine systemd-Unit an,

sudo nano /lib/systemd/system/x11vnc.service

mit folgendem Inhalt:

[Unit]
Description=Start X11VNC
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -display :0 -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

Und last-but-not least wird nun noch der autostart eingerichtet:

sudo systemctl enable x11vnc.service

 

 

1 Kommentar

  1. Klaus

    Danke für den Beitrag.
    Bisher habe ich mit Teamviewer auf meinen Raps zugegriffen. Da ich im Wohnmobil den 3er durch einen Zero ersetzt habe, funktionierte Teamviewer nicht mehr (andere Hardware, wird nicht unterstützt) teste ich das heute.

    Antworten

Schreiben Sie einen Kommentar

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