Wie von @Gilles vorgeschlagen, ist es besser geeignet, bei Bedarf ausgeführt zu werden, insbesondere wenn Sie es für Selentests verwenden. Hier sind Beispiel-Shell-Befehle:
export DISPLAY=:99
xdpyinfo -display $DISPLAY > /dev/null || Xvfb $DISPLAY -screen 0 1024x768x16 &
Wenn Sie die Anzeige mit "Vorheriges" überprüfen, xdpyinfowird sichergestellt, dass Sie den virtuellen Framebuffer nicht zweimal ausführen.
Wenn Sie es beim Start wirklich starten müssen, können Sie das folgende init.d- Skript ausprobieren :
#!/bin/sh
XVFB=/usr/bin/Xvfb
XVFBARGS=":1 -screen 0 1024x768x24 -ac +extension GLX +render -noreset -nolisten tcp"
PIDFILE=/var/run/xvfb.pid
case "$1" in
start)
echo -n "Starting virtual X frame buffer: Xvfb"
start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile --background --exec $XVFB -- $XVFBARGS
echo "."
;;
stop)
echo -n "Stopping virtual X frame buffer: Xvfb"
start-stop-daemon --stop --quiet --pidfile $PIDFILE
echo "."
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/xvfb {start|stop|restart}"
exit 1
esac
exit 0
Quelle: dloman / xvfb bei GitHub (gegabelt von: jterrace / xvfb )
Speichern Sie es als /etc/init.d/xvfbund machen Sie es ausführbar, dann starten Sie es als:
/etc/init.d/xvfb start
Führen Sie Folgendes aus, um beim Start automatisch ausgeführt zu werden:
sudo update-rc.d xvfb defaults
Führen Sie Folgendes aus, um es aus dem Autorun zu entfernen:
sudo update-rc.d -f xvfb remove
Fügen Sie auch eine environmentDatei hinzu, die von X-Programmen erkannt werden soll, z.
echo DISPLAY=":1" | sudo tee -a /etc/environment
Hier ist die Version für die systemd-Version: dloman / xvfb.service .
/etc/rc.localder Verwendungupdate-rc.dmit eigenen Skripten vorzuziehen ?