我试图让Xvfb在Ubuntu 10.10(Maverick)上启动系统时运行,但它无法运行.在/etc/rc.local中,我有以下内容:
/root/start_xvfb.sh >> /var/log/start_xvfb.log 2>&1 exit 0
在/root/start_xvfb.sh我有:
#!/bin/sh -e startx -- `which Xvfb` :0 -screen 0 1024x768x24 & exit 0
重新启动计算机后,日志文件(/var/log/start_xvfb.log)包含:
[dix] Could not init font path element /usr/share/fonts/X11/cyrillic,removing from list! ^M waiting for X server to shut down ^M
鉴于日志文件中的内容,似乎正在调用“startx – `Xvfb`:0-screen 0 1024x768x24”,但此后很快就会终止该进程.
我想在启动时启动Xvfb,因为我需要在没有监视器显示的远程服务器上运行Firefox.如果我在SSH到远程机器后运行/etc/rc.local,Xvfb启动没有问题,我可以通过“firefox –display =:0&”启动Firefox.如果我尝试在没有首先启动Xvfb的情况下使用该命令运行Firefox,我会收到消息“错误:无法打开显示:: 0”.
请注意,我并不是想在本地工作站上看到显示.我希望应用程序显示在远程计算机的(虚拟,内存)显示中.
有什么想法为什么X服务器在启动后立即关闭远程机器?是否有更好的方法让Xvfb在系统启动时启动?
在此先感谢您的帮助.
我认为shell会在退出时TERMs,由于’&’而立即生效.也许你想使用start-stop-daemon?例如:
start-stop-daemon --start -b -x /usr/bin/Xvfb :1
我想如果你想要startx包装器的帮助,你可能想要运行你的shellcript.