Hoewel de Raspberry Pi via HDMI of DVI op een tv of monitor kan worden aangesloten, is het soms wenselijk om een ​​Raspberry Pi "headless" (zonder monitor) te gebruiken. In een headless-opstelling kun je via SSH verbinding maken met je Raspberry, maar als je de volledige desktop wilt, moet je verbinding maken via een extern desktopprotocol. Het makkelijkste is om VNC op Raspberry Pi in te stellen. Virtual Network Computing (VNC) is een grafisch desktopprotocol waarmee u vanaf een andere machine toegang hebt tot de volledige Raspberry Pi-desktop. Meestal zou u de VNC-client uitvoeren op een pc met Windows, OS X of Linux en het bureaublad van de Pi openen via het netwerk.

De eerste stap is het installeren van de VNC-server op de Raspberry Pi. Voer hiervoor de volgende opdracht uit om TightVNC te installeren, een lichtgewicht en open-source implementatie van het VNC-systeem:

 sudo apt-get installeer tightvncserver 

Nu de server is geïnstalleerd, moet deze worden gestart om een ​​externe desktopsessie te genereren. De server is standaard niet gestart, maar kan op deze manier handmatig worden gestart:

 vncserver -geometry 1024x728 -depth 24 

Waar -geometry de resolutie van het externe bureaublad instelt, in dit geval 1024 x 768; en -depth stelt de kleurdiepte in, in dit geval 24 bits. De eerste keer dat u de VNC-server uitvoert, wordt u om een ​​wachtwoord voor externe toegang gevraagd. Dit is het wachtwoord dat moet worden ingevoerd wanneer iemand op afstand probeert verbinding te maken met het bureaublad. Dit wachtwoord moet niet worden gebruikt als het enige middel om openbare toegang tot een extern bureaublad te stoppen, maar op een privé-thuis- of kantoornetwerk. Het moet voldoende zijn om de toegang tot de gebruikersinterface van de Pi te beperken. U kunt het wachtwoord op elk gewenst moment wijzigen met de tool vncpasswd .

Als onderdeel van de uitvoer van de server, start de vncserver het nummer van de virtuele display die hij heeft gemaakt. Onder X (het onderliggende systeem voor veel Linux-vensteromgevingen), kunt u meerdere beeldschermen gebruiken met de standaard fysieke desktop als :0 . De vncserver zal waarschijnlijk scherm :1 aanmaken dat toegankelijk is vanaf een VNC-client op poort 5901. Poort 5902 is voor externe virtuele desktop :2 enzovoort. U kunt de VNC-server dwingen een sessie op een bepaald scherm te maken door het nummer als de eerste parameter op te geven:

 vncserver: 1 -geometry 1024x728 -depth 24 

U kunt op elk gewenst moment een extern bureaublad doden met behulp van:

 vncserver -kill: 1 

Waar :1 is het desktopnummer.

VNC-klanten

Er zijn veel VNC-clients (vaak VNC-viewers genoemd) voor Windows, OS X en Linux. Je kunt een Windows-viewer downloaden van de TightVNC-website en voor Linux kun je er een uit de repository van je distro installeren. Voor Ubuntu gebruik:

 sudo apt-get install vncviewer 

Om verbinding te maken met de Raspberry Pi, start de VNC viewer:

 vncviewer 192.168.1.4:1 

Waarbij 192.168.1.4 het adres van de Raspberry Pi is en :1 het desktopnummer is.

Start VNC-server bij opstarten

Het is mogelijk om de VNC-server bij het opstarten te laten starten door een speciaal initialisatiescript te maken. Maak een bestand met de naam vncserver in je thuismap met de volgende shell-code:

 #! / bin / sh ### BEGININ INFO # Bevat: VNC # Vereiste start: $ local_fs # Vereist -Stop: # Standaard-start: 2 3 4 5 # Standaard-stop: 0 1 6 # Korte beschrijving: Start of stop de VNC-server ### END INIT INFO PATH = / sbin: / usr / sbin: / bin: / usr / bin eval cd ~ pi case "$ 1" in start) su pi -c "/ usr / bin / vncserver: 1 -geometry 1024x728 -depth 24 "echo" Gestarte VNC-server. " ;; stop) su pi -c "/ usr / bin / vncserver -kill: 1" echo "Gestopte VNC-server." ;; *) echo "Gebruik: vncserver [start | stop]"> & 2 exit 3 ;; esac: 

Voer nu de volgende opdrachten uit om de eigenaar van het bestand te wijzigen in root, kopieer het naar de directory init.d en installeer het script:

 sudo mv vncserver /etc/init.d/ sudo chown root: root /etc/init.d/vncserver sudo chmod 755 /etc/init.d/vncserver sudo update-rc.d vncserver standaardinstellingen 

Start nu opnieuw en controleer of de VNC-server automatisch is gestart. Er zijn een aantal dingen die u moet noteren over dit script. Eerst wordt ervan uitgegaan dat u de standaard pi gebruiker gebruikt en ten tweede werkt het alleen als u eerder een wachtwoord hebt ingesteld met vncpasswd of als u de VNC-server minstens één keer handmatig hebt uitgevoerd.

Conclusie

Nu de VNC-server is geïnstalleerd, kunt u via een VNC-client toegang krijgen tot een volledige desktop via het netwerk. Zelfs als uw Raspberry Pi is aangesloten op een tv of monitor, is dit een geweldige manier om extern beheer van het apparaat in te schakelen. Als u ooit de VNC-server moet stoppen, kunt u nu de volgende opdracht gebruiken:

 sudo service vncserver stop 

Het kan ook opnieuw worden gestart door de parameter stop vervangen door een startparameter.