需要显示的cron

时间:2009-12-02 01:19:00

标签: user-interface cron

我试图运行一个涉及打开图形程序的cron,因此需要一个DISPLAY集。我尝试过以下方法:

*      *      *       *      *      DISPLAY=:0.0 /opt/firefox/firefox -print ..

它不起作用,即使我在我的控制台上尝试它,上面的命令也不起作用。它只是坐在那里什么都不做。现在,唯一可行的方法如下:

$ echo $DISPLAY
localhost:10.0
$ crontab -l
*      *      *       *      *      DISPLAY=:10.0 /opt/firefox/firefox -print ..

如果我保持登录到机器并等待cron运行,这是有效的。

有没有可行的方法来完成这项工作?我唯一能做的就是始终保持登录机器(我想避免)。

3 个答案:

答案 0 :(得分:2)

我认为没有任何简单的设置可以让它正常工作。

但是,Xvfb(X Virtual Framebuffer)应该能够为您提供一个满足您需求的虚拟X显示器:

http://www.xfree86.org/4.0.1/Xvfb.1.html

答案 1 :(得分:0)

我不确定你是否可以这样做。但是,如果您可以这样做,那么您是否在执行此命令时检查X服务器是否正在运行?

答案 2 :(得分:0)

我认为Nate C-K有正确的想法,这是使用Xvfb and a headless Firefox的指南。 Adrian Holovaty的博客也讨论了similar need(评论很有用)。

如果您只需要模拟浏览器,则始终有HTMLUnittwill