¿Cómo comprobar si Xvfb (ya) se está ejecutando en la pantalla :0?

¿Cómo comprobar si Xvfb (ya) se está ejecutando en la pantalla :0?

El título lo dice todo. pgrep Xvfbsólo hace la mitad del truco. No me dice el número de pantalla.

Respuesta1

No estoy seguro de lo que intenta lograr, pero puede verificar si hay una pantalla X disponible ejecutando "x display info":

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

Nota: si no puede acceder a la pantalla, también se informará como "Gratis". Otra forma es comprobar la existencia del /tmp/.X0-lockque contiene el archivo PID de un servidor X.

En lugar de mostrar el comando, una forma más confiable sería verificar si hay procesos que coincidan con el binario:

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

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

información relacionada