Raspberry PI fernsteuern mittels VNC

Der SoC Raspberry Pi ist ein ideales Gerät, das an einem Fernseher oder Monitor als Mediencenter seinen Dienst tut oder. Da ist es unpraktisch, wenn man neben dem HDMI-Kabel fürs Bild und dem USB-Kabel für die Stromversorgung auch noch Tastatur und Maus anstöpseln muss.
Ein Ausweg ist ein VNC-Programm.
Das ist nicht ganz trivial, die einzelnen Schritte mit TightVNC lauten:

Installation
Das Programm lädt man in der Konsole mit
sudo apt-get install tightvncserver.

Erster Start und Einrichtung des Programms
Mit dem ersten Start, ebenfalls in der Konsole mit tightvncserver legt man ein Zugangspasswort mit mindestens acht Zeichen fest, optional kann man ein weiteres Passwort angeben, das nur zum Beobachten des Desktops dient, steuern kann man den Rechner dann nicht.
Das oder die Passworte bleiben bei weiteren Starts erhalten; das gilt auch für den unten beschriebenen automatischen Start beim Booten von Raspbian.

Start des Servers
Danach kann man den Server schon mal starten. Auch das passiert immer noch in einer Konsole:
vncserver :1 -geometry 1920x1080 -depth 24.
Die Optionen stellen die optimale Auflösung des Raspberry mit Geometry und Depth ein. Der Server starte auf einem Bildschirm 1. Der Bildschirm 0 darf hier nicht verwendet werden, das führt zu einer Fehlermeldung.

Beenden des Servers
Immer noch in der Konsole kann man den Service mit vncserver -kill :1 beenden.

TightVNC automatisch als Service bei Booten von Raspbian starten
Es müssen zwei Dateien erstellt werden. Dazu verwendet man am einfachsten den mitgelieferten Texteditor Leafpad.
Dazu gibt man in einer Konsole sudo leafpad ein. Das Programm startet dann mit Rootrechten und kann Dateien in beliebigen Verzeichnissen erstellen.
Das Konsolenfenster kann auch gleich aufbleiben; um im Fenster immer Rootrechte zu haben gibt man sudo su ein.

Startdatei für TightVNC erstellen
In Leafpad wird nun eine Datei mit folgendem Inhalt erstellt:

#!/bin/sh
vncserver :1 -geometry 1920x1080 -depth 24 -dpi 96

und im Ordner /bin als vnc.sh gespeichert.

Startdatei ausführbar machen
In der Konsole wird im gleichen Verzeichnis mit chmod +x vnc.sh eine ausführbare Datei aus vnc.sh gemacht, die jederzeit mit ./vnc.sh gestartet werden kann.

Das Shell-Script beim Booten automatisch starten
Mit Leafpad wird nun eine weitere Datei erstellt. Diese hat folgenden Inhalt:

#! /bin/sh
# /etc/init.d/vncboot

### BEGIN INIT INFO
# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO

USER=pi
HOME=/home/pi

export USER HOME

case "$1" in
start)
echo "Starting VNC Server"
#Insert your favoured settings for a VNC session
su - $USER -c "/usr/bin/vncserver :1 -geometry 1280x800 -depth 24 -pixelformat rgb565"
;;

stop)
echo "Stopping VNC Server"
/usr/bin/vncserver -kill :1
;;

*)
echo "Usage: /etc/init.d/vncboot {start|stop}"
exit 1
;;
esac

exit 0

und wird unter /etc/init.d/ als vncboot gespeichert.

vncboot ausführbar machen
Die eben erstellt Datei wird in der Konsole mit chmod 755 vncboot ausführbar gemacht. Zum Abschluss müssen noch die beiden Befehle

update-rc.d lightdm remove
update-rc.d vncboot defaults

ausgeführt werden.

Fertig sein
Raspberry neu starten. Auch das kann man noch schnell in der Konsole machen: sudo reboot.


Fernsteuern mit dem Androiden
Es gibt so einige VNC-Programme im Play Store. Ausreichend ist zum Beispiel Remote Ripple. Als Ziel wird die IP-Adresse des Raspberry Pi eingegeben, die Portnummer lautet 5901.
In der Konsole des Raspbian erfährt man die IP-Adresse mit dem Befehl ifconfig

Fernsteuern mit dem PC
Ein einfaches VNC-Programm für Windows ist TightVNC. Als Ziel wird die IP-Adresse des Raspberry Pi eingegeben, die Portnummer lautet 5901.
In der Konsole des Raspbian erfährt man die IP-Adresse mit dem Befehl ifconfig.
Die alte Version 1.3 funktioniert ohne Installation und kann von USB-Stäbchen gestartet werden.

Ladeliste
Remote Ripple
https://play.google.com/store/apps/details?id=com.glavsoft.rrviewer

TightVNC
TightVNC, Download bei heise

TightVNC 1.3
http://www.tightvnc.com/download-old.php