Wie kann ich überprüfen, ob Xvfb (bereits) auf dem Display :0 läuft?

Wie kann ich überprüfen, ob Xvfb (bereits) auf dem Display :0 läuft?

Der Titel sagt alles. pgrep XvfbEr erfüllt nur die halbe Aufgabe. Er wird mir die Anzeigenummer nicht mitteilen.

Antwort1

Ich bin nicht sicher, was Sie erreichen möchten, aber Sie können prüfen, ob ein X-Display verfügbar ist, indem Sie „x display info“ ausführen:

xdpyinfo -display :0 >/dev/null 2>&1 && echo "In use" || echo "Free"

Hinweis: Wenn Sie nicht auf die Anzeige zugreifen können, wird sie ebenfalls als „Frei“ gemeldet. Eine andere Möglichkeit besteht darin, zu prüfen, ob /tmp/.X0-lockdie PID-Datei eines X-Servers vorhanden ist.

Anstatt den Befehl anzuzeigen, wäre es zuverlässiger, nach Prozessen zu suchen, die mit der Binärdatei übereinstimmen:

pids=$(pidof /usr/bin/Xvfb)
if [ -n "$pids" ]; then
    processes="$(ps --format command --no-headers -ww --pid $pids)"
else
    echo "Not running"
fi

Quelle:https://github.com/Bumblebee-Project/Bumblebee/blob/master/install-files/common-functions#L112

verwandte Informationen