Wie verhindere ich, dass x11vnc heruntergefahren wird, wenn ich mich abmelde?

Wie verhindere ich, dass x11vnc heruntergefahren wird, wenn ich mich abmelde?

Beim Booten habe ich

sudo x11vnc -xkb -noxrecord -forever -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -usepw

über init.d ausführen

Es funktioniert und zeigt mir die Anmeldeaufforderung an, wenn ich einen VNC-Client verwende. Wenn ich mich jedoch abmelde, wird der VNC-Server heruntergefahren und ich muss mich per SSH anmelden, um ihn neu zu starten. Ich habe ein Skript gefunden und geändert, von dem ich glaube, dass es funktionieren sollte:

#!/bin/bash

if pgrep "x11vnc"
then
    echo "Running"
else
    echo "Stopped"
    sudo x11vnc -xkb -noxrecord -forever -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -usepw
fi

und das tut es (es ist in /usr/local/bin/testvnc, wenn ich es ausführe, jedoch mein Cron-Job:

* * * * * /usr/local/bin/testvnc

Es heißt, es sei „cat var/log/syslog | grep vnc“ ausgeführt worden, jedoch wird VNC NICHT gestartet.

Antwort1

Bei mir trat unter Kubuntu 16.04.1 das gleiche Problem auf, aber Ihr Skript gab mir eine Idee für eine Lösung.

Erstellen Sie eine Servicedatei für systemd:

sudo nano /etc/systemd/system/x11vnc.service

dies sind meine x11vnc.serviceDateien:

[Unit]
Description=Start x11vnc at startup.
After=multi-user.target display-manager.service

[Service]
Type=simple
ExecStart=/bin/bash -c '/usr/bin/x11vnc -auth /var/run/sddm/* -noxdamage -norepeat -rfbauth /home/x11vnc/passwd -display :0 -rfbport 5900 -shared -o /var/log/x11vnc.log'
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Legen Sie die Berechtigungen zum Ausführen fest:

sudo chmod u+x /etc/systemd/system/x11vnc.service

Skript auf systemd neu laden und aktivieren:

sudo systemctl daemon-reload
sudo systemctl enable x11vnc.service

Wichtig:Achten Sie darauf, die Optionen -loopund im Befehl nicht zu verwenden. Andernfalls kann x11vnc den Prozess nach einer Abmeldung nicht beenden und systemd kann den Dienst nicht neu starten.-foreverx11vnc

verwandte Informationen