Escriptori remot sempre disponible amb LXQt, TigerVNC i una Raspberry Pi 5

Servidor sense pantalla amb una Raspberry Pi 5 i un escriptori remot VNC

L'objectiu d'aquest article és mostrar com podem tenir un servidor remot sempre al nostre abast amb VNC i una Raspberry Pi sense teclat, ratolí ni monitor.

Instal·lem els següents programes per a tenir un escriptori LXQt remot amb VNC sempre disponible:

sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-tools lxqt-core lxqt-session lxqt-panel pcmanfm-qt openbox dbus-x11 xdg-user-dirs

És molt important la seguretat. Ens crearem una contrasenya per a totes les sessions de connexió remota:

vncpasswd

Anem a crear un script que inicie TigerVNC sempre que iniciem l'escriptori LXQt. Editarem el fitxer ~/.vnc/xstartup i afegirem el següent:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
#
export XDG_RUNTIME_DIR=/run/user/$(id -u)
if [ ! -d "$XDG_RUNTIME_DIR" ]; then
export XDG_RUNTIME_DIR="$HOME/.xdg-runtime"
mkdir -p "$XDG_RUNTIME_DIR"
chmod 700 "$XDG_RUNTIME_DIR"
fi
#
xrdb "$HOME/.Xresources" 2>/dev/null
exec dbus-launch --exit-with-session startlxqt

I farem que siga executable:

chmod +x ~/.vnc/xstartup

Prova manual

Anem a fer la primera prova. Anem a iniciar manualment el servidor VNC i ens hauria d'obrir un escriptori LXQt:

vncserver -localhost no -geometry 1920x1080 -depth 24 :1

O si no vols consumir tants recursos, pots abaixar la resolució i la profunditat de color, per exemple qualsevol d'aquestes:

XGA	1024×768	4:3	1,33:1	786 kpx
XGA+	1152×864	4:3	1,33:1	995 kpx
HD	1280x720	16:9	1,78:1	921 kpx
WXGA	1280×768	15:9 o 16:10	1,67:1	983 kpx
SXGA	1280×1024	5:4	1.25:1	989 kpx
WXGA	1360×768[2]​	85:48	1,77:1	1044 kpx
WXGA	1366×768	aprox. 16:9	1,78:1	1049 kpx
WXGA	1280×800	16:10	1,6:1	1 Mpx
WXGA+	1440×900	16:10	1,6:1	1,2 Mpx
SXGA	1280×1024	5:4	1,25:1	1,3 Mpx
HD+	1600x900	16:9	1,78:1	1.44 Mpx
WSXGA+	1680×1050	16:10	1,6:1	1,76 Mpx
UXGA	1600×1200	4:3	1,33:1	1,9 Mpx
Full HD	1920×1080	16:9	1,78:1	2 Mpx

Podem fer-ho així:

vncserver -localhost no -geometry 13660x768 -depth 16 :1

Ens connectarem des de quaslevol ordinador de la nostra LAN:

vncviewer 192.168.1.10:1

escriptori LXQt remot

Funciona perfectament! aleshores, ja podem automatitzar tenir un escriptori sempre disponible.

Un servei que inicie l'escriptori quan encenem la Raspberry Pi
Ara farem que el servidor TigerVNC s’inicie automàticament cada vegada que la Raspberry arranque de manera autònoma. Ho farem amb un servei systemd d’usuari, que és la manera més neta i moderna (no cal tocar /etc ni executar com a root).

Crearem el fitxer vncserver.server:

joan@r5:~ $ mkdir -p ~/.config/systemd/user
joan@r5:~ $ vi .config/systemd/user/vncserver.service

Afegirem el següent codi:

[Unit]
Description=TigerVNC LXQt Server
After=graphical-session.target network.target

[Service]
Type=forking
ExecStart=/usr/bin/vncserver -localhost no -geometry 1920x1080 -depth 16 :1
ExecStop=/usr/bin/vncserver -kill :1
Restart=on-failure

# Directori HOME correcte
WorkingDirectory=%h
Environment=DISPLAY=:1
Environment=XDG_RUNTIME_DIR=/run/user/%U

[Install]
WantedBy=default.target

Habilitarem el “linger” perquè systemd d’usuari s’execute al boot, Això permet que els serveis “d’usuari” s’executin encara que no hi hagi sessió iniciada.. Ho farem de la següent manera:

sudo loginctl enable-linger $USER

Carreguem el servei i reiniciem la màquina:

systemctl --user daemon-reload
sudo reboot

Ja tenim un servidor sense monitor servint sempre un escriptori remot amb VNC.

Doncs bé això és tot, espere que trobes útil aquest article i que et motive a compartir els teus trucs, els teus coneixements i els teus experiments amb el Programari Lliure. Pensa-ho, va, que la Comunitat del Programari Lliure va creixent gràcies a la documentació, el disseny, la formació o la programació, sigues part de la Comunitat :-)

La cultura i la lliure circulació de les idees és l'arma més efectiva contra les dictadures del pensament i contra la ignorància.

Utilitats

NAVEGACIÓ SENSE RATOLÍ

- Tab següent enllaç.
- Shift+Tab anterior enllaç.
- Enter activa l'enllaç.
- Alt+esquerra anar arrere.

CONTRAST DE COLORS

Accessibilitat - Color Negre
Accessibilitat - Color Groc
Accessibilitat - Color Verd

Accessibilitat - Color Blau
Accessibilitat - Color Crema
Accessibilitat - Color Blanc

 

PORTADES ALTERNATIVES