incrond文件产品的所有者?

时间:2011-09-05 02:12:04

标签: linux cron

请[1]考虑此命令:sudo incrontab ~/incron-config其中~/incron-config包含:

/home/zetah/doc IN_CREATE,IN_MOVED_TO /home/zetah/scripts/do_something.sh $@/$#

do_something.sh由[2]组成:

#! /bin/bash
python /home/zetah/scripts/py_something.py "$1"

Python脚本访问一些在线服务并生成3个新文件。它们归root所有 为什么这样,我怎么能改变这种行为。我想成为这些产品文件的所有者

由于


[1]发表在问问Ubuntu之前 - 想在这里尝试我的机会,会在任何结果中互相连接
[2]在Bash脚本中包装Python脚本似乎很蹩脚,但我不能这样做

1 个答案:

答案 0 :(得分:0)

创建的文件由root拥有,可能是因为你以root身份运行incrontab,然后python通过bash从它继承

您可以从您自己的用户运行incrontab,只需在/etc/incron.allow中添加您的用户名(以允许您使用incron),然后使用您的帐户“incrontab -e”重新创建incron表(不要忘了从root中删除条目

第二个选项(如果你不能修改incron.allow)是用你的用户名调用python。 在bash脚本中,修改:

python /home/zetah/scripts/py_something.py "$1"

in

su <username> -c"python /home/zetah/scripts/py_something.py '$1'"

希望有所帮助

ericc