【发布时间】:2016-05-04 15:40:35
【问题描述】:
编辑:显然脚本确实运行,但它只是没有启动我的浏览器。还是不知道为什么。
我正在尝试使用 supervisor 来运行命令/脚本,但我似乎无法让它工作。
我得到了 Pi_Video_looper 的想法,它对以下脚本执行相同的操作:
# Supervisord configuration to run video looper at boot and
# ensure it runs continuously.
[program:video_looper]
command=python -u -m Adafruit_Video_Looper.video_looper
autostart=true
autorestart=unexpected
startsecs=5
所以我将它修改为我的需要:
# Supervisord configuration to run video looper at boot and
# ensure it runs continuously.
[program:video_looper]
command=chromium-browser http://google.be --incognito
autostart=true
autorestart=unexpected
startsecs=5
我也将它与命令一起使用:
python /home/pi/Startup/Script.py
它会做一些测试然后调用浏览器,但也不做任何事情,尽管它可以从命令行完美运行。我错过了什么吗?
编辑:重启后不起作用,sudo service supervisor restart 后不起作用
编辑 2: 日志文件显示它应该正在运行,所以显然它只是没有在我的 GUI 中打开它?:
2016-01-27 16:40:43,569 INFO daemonizing the supervisord process
2016-01-27 16:40:43,573 INFO supervisord started with pid 4767
2016-01-27 16:40:44,583 INFO spawned: 'video_looper' with pid 4773
2016-01-27 16:40:49,593 INFO success: video_looper entered RUNNING state, process has stayed up for > than 5 seconds (startsecs)
【问题讨论】:
-
你检查过它没有在后台运行吗?
-
正如我的编辑中所述,它正在运行,铬在某处运行。我也一直在尝试使用 'display=:0 chromium-browser' 作为命令,效果很好,我可以通过 ssh 在 pi 上启动 chrome,但在放入 Supervisor 时不起作用。它正在运行,它有一个 pid,但我不知道实际的 chromium-window 在哪里..
-
我明白了,但是
ps aux | grep chromium显示了什么?这不是 supervisord 的目的,您需要找到一种查看子流程的方法。htop会告诉你它在哪里。 Chrome 在关闭和启动时不需要启动,一个简单的脚本就可以解决问题。 -
它确实需要在关闭时启动,因为它旨在作为信息亭运行。如前所述,该过程正在运行。但是,主要问题是它以 root 身份运行,这显然是不可能的。我在我的笔记本电脑上输入了解决方案,但是如果我将 user=pi 放入配置中,它就可以正常工作:-)
-
好消息。很高兴你把事情解决了。在这种情况下,可能值得回答您自己的问题:)
标签: python supervisord startupscript