python fabric:put()导致权限被拒绝

时间:2017-10-27 19:11:02

标签: python fabric

我使用面料并且有:

put('/projects/configuration-management/prototype','/etc/nginx/sites-available')

结果是:

Underlying exception:
    Permission denied

Aborting.

可以轻松上传其他配置文件。我怎么能避免我的问题?

1 个答案:

答案 0 :(得分:2)

看起来您需要超级用户权限,使用sudo运行它并且它可以正常工作

在文档(link here)中说:

  

虽然SFTP协议(放置使用)没有直接的能力   您可以将文件上传到不属于连接用户的位置   指定 use_sudo = True 来解决此问题。设置时,此设置   导致将本地文件上传到临时位置   远程端(默认为远程用户的$ HOME;这可能会被覆盖   通过temp_dir),然后使用sudo将它们移动到remote_path。