我在Ubuntu上有两个用户, www-data 和 labor ,两者都在 chiara 组中。 两个用户都可以
>chown :chiara some_file
>chgrp chiara some_file
我有一个使用
的pythontest.py
脚本
import os
os.system('whoami') # displays 'www-data' in both cases
res = os.system('chown :chiara some_file')
print res # 0 when called from shell, 256 when called from php script
当我以任一用户身份调用此脚本时,它可以正常工作。
但是,当我从apache中的php脚本调用此脚本时
shell_exec('test.py')
尽管显示的用户是'www-data', 仍无法正常工作。
如果我将'chmod'改为'chgrp',这个问题仍然存在。
此外,使用os.chown
不起作用。对我来说似乎是一般的许可问题......
编辑:在python中使用subprocess.Popen,我可以检索错误信息
changing group of '/absolute/path/to/some_file': Operation not permitted
编辑2:我想在这个问题上投降......在我的具体应用中,目录上的“chmod 777”就足够了(有效!)。但是,我只想了解出了什么问题。