我有一个使用pysftp用Python 3编写的小型服务:
with pysftp.Connection(
host=host,
username=connection_data["user"],
port=connection_data["port"], log=log_file, cnopts=cnopts
) as srv:
...
当我运行它(python3 pythonprog.py
)时,出现以下错误:
PermissionError:[Errno 13]权限被拒绝:'/mydisk/folder/logs/pysftp-20181127-231208.log'
很明显,如果我使用sudo python3 pythonprog.py
运行此错误,就不会收到此错误。
我检查了此文件夹的权限:
ls -l </ p>
drwxrwxrwx + 2 myuser myuser 4096 11月27日22:38日志
我还用setfacl
更改了ACL。基本上,无论我做什么,错误仍然存在。如何授予此权限?
答案 0 :(得分:0)
该服务以某人身份运行-某人需要权限才能写入该文件或文件夹。这不是代码问题,而是权限问题。 sudo不是运行代码的解决方案。我认为它像您一样运行?您可以写入该文件/文件夹吗?