Cómo iniciar x11vnc por socket (es decir, solo cuando sea necesario)

Cómo iniciar x11vnc por socket (es decir, solo cuando sea necesario)

En realidad empiezo x11vnc /home/odroid/.config/lxsession/LXDE/autostartcon

@/bin/x11vnc -bg -forever -shared -rfbauth /home/odroid/.vnc-passwd -noxdamage -norc -noxrecord -capslock -no6 -rfbport 5900

El inicio de sesión automático al inicio está bien y funciona bien.
Pero rara vez inicio sesión en modo gráfico.

Quiero que funcione como sshd.socket (vs sshd.service)
¿Tienes una idea o línea de investigación?

Respuesta1

Entonces creo/etc/systemd/system/xvnc.socket

[Unit]
Description=XVNC Server

[Socket]
ListenStream=5900
Accept=yes

[Install]
WantedBy=sockets.target

Y/etc/systemd/system/[email protected]

[Unit]
Description=XVNC Per-Connection Daemon

[Service]
ExecStart=/usr/bin/x11vnc -display :0 -bg -forever -shared -rfbauth /home/odroid/.vnc-passwd -noxdamage -norc -noxrecord -capslock -inetd
User=odroid
StandardInput=socket
StandardError=syslog

Después de reiniciar puedo conectarme desde mi PC :)

Respuesta2

El primer
jeep es el servidor (ARM Archlinux sin pantalla física).
Mi PC está bajo Archlinux.

Intento la sugerencia de @Bratchley.
Cambio X11Forwardinga yesin /etc/ssh/sshd_configy reinicio. sshd.socket
Funciona bien :)
Puedo conectarme desde la PC. ssh -Y root@jeep
Si inicio, lxterminaltengo una ventana de terminal en jeep :)

Pero necesito el escritorio LXDE completo del jeep. No sólo "solicitudes de deportación".
Porque uso conky para monitorear mucha información.
Entonces desactivo lightdm.servicey reinicio el jeep.

Y....
Si inicio startlxdeo lxsession(en jeep, por supuesto) tengo una pantalla gráfica de inicio de sesión de..... ¡¡¡mi PC!!!

Después de muchas búsquedas encontré esto.respuestay si entiendo bien no es posible :(

Entonces vuelvo a mi primera pregunta (iniciar x11vnc por socket)

información relacionada