Python守护程序Subprocess在启动时无法正常工作

时间:2010-03-19 20:18:41

标签: python imagemagick daemon gearman

我正在尝试编写一个将在启动时启动的python守护程序。该脚本的目标是从我们的gearman负载平衡服务器接收一份工作并完成工作。我正在使用pypi(http://pypi.python.org/pypi/python-daemon/)中的python-daemon模块。它正在完成的工作的性质是将orf(奥林巴斯原始图像格式)中的图像转换为jpeg。为了实现这一点,在这种情况下使用外部程序。当我在启动时启动守护进程时,问题就出现了,如果我从shell启动它运行完美并完成工作。当它在启动时启动时,它无法启动子进程命令。

commandString = '/usr/bin/ufraw-batch --interpolation=four-color --wb=camera --compression=100 --output="' + outfile + '" --out-type=jpg  --overwrite "' + infile + '"'
args = shlex.split(commandString)
process = subprocess.Popen(args).wait()

我不确定我做错了什么。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

该问题与python无关,而是与ubuntu init.d守护进程相关。我假设python脚本正在被用户证明它不是。为了解决这个问题,我在init.d脚本中添加了一个sudo命令,现在子程序成功启动。