Al primo avvio ci verrà richiesta una password per accedere al server; dopo averla impostata ci sarà ancora richiesto se vogliamo impostare una password view-only. Lascio a voi la scelta della vostra configurazione; personalmente mi sono accontentato di una password unica ;-). Sempre con il primo avvio verrà, inoltre, creata la directory /root/.vnc/xstartup con le impostazioni relative al server grafico. Possiamo ora "killare" la sessione grafica con:
# vncserver -kill :1
per installare un window manager da utilizzare come desktop. Il "kill" non è fondamentale, ma a seconda del window-manager installato dovremo modificare la configurazione di /root/.vnc/xstartup, creato, come detto, al primo avvio del server. Dopo aver effettuato qualche test, la mia scelta è caduta su icewm in quanto molto leggero e piuttosto "indipendente" dal tasto destro del mouse, difficile da simulare con il client vnc. Installiamo dunque questo pacchetto utilizzando sempre Apt. Fatto ciò possiamo ora modificare il file /root/.vnc/xstartup adattandolo alla nostra scelta. Commentiamo, dunque, la linea relativa a xsession di X11 e aggiungiamo il nostro icewm. Il risultato sarà qualcosa di simile:
#!/bin/sh xrdb $HOME/.Xresources xsetroot -solid grey #x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & #x-window-manager & #/etc/X11/Xsession icewm &
Fatto ciò possiamo ora lanciare la nostra sessione grafica. Per facilitare l'operazione ci aiutiamo ancora con un piccolo script:
#!/bin/bash export USER=root vncserver -geometry 480x320
lo chiamiamo ad esempio sx (start x) e lo salviamo ad esempio in /usr/local/bin, e gli attribuiamo i permessi d'esecuzione come sempre con chmod. A questo punto lanciamo la sessione grafica digitando semplicemente sx. I più attenti noteranno subito un errore all'avvio del server:
xauth: (argv):1: bad display name "localhost:1" in "add" command
Questo perché non abbiamo un host definito nel sistema associato a localhost. Creiamo dunque il file /etc/hosts ed inseriamo la seguente riga:
127.0.0.1 localhost
Salviamo il file e riavviamo il server. L'errore non dovrebbe essere più presente.
Per avviare il client su android, usciamo dal terminale (lasciandolo in background, a seconda del dispositivo che stiamo utilizzando, nel mio caso premendo il pulsante home) ed avviamo la connessione con le seguenti impostazioni:
- Nickname: root
- Password: la password che abbiamo impostato all'installazione di tightvncserver su debian
- Indirizzo: localhost
- Porta: 5901
- Colori: 24-bit