问题描述
我正在从这里复制此问题:http://getsatisfaction.com/cyberduck/topics/can_i_use_sudo_over_sftp_with_cyberduck
我遇到了同样的问题,发现很难找到答案:
I am using Cyberduck over SFTP. I can connect and browse files fine, but when I try to upload, I get a permissions error. Web host says I need to use the ‘sudo’ command. I know how to do this via Terminal, but it is possible to to tell Cyberduck to use sudo?
请不要告诉我使用root,因为:
What if you don’t have root access or don’t want to enable root access?
最佳解决思路
我在很长一段时间里都遇到过同样的问题,因此我辞职了,只是使用腻子来编辑文件,或者将其从主目录中移出。
不幸的是,这只是部分解决方案,因为它在linux中本身不起作用。您也许可以在葡萄酒中使用它。事实证明,可以使用winscp进行此操作。
在winscp中设置一个新的SFTP会话,
之后,转到设置的SFTP部分,选择一个自定义SFTP服务器,然后键入到远程sftp-server二进制文件的路径,并在其前面附加sudo -s。为此,您需要启用不带密码的sudo运行。您可以在远程服务器上使用whereis命令来找到sftp-server的路径。
次佳解决思路
我将带有cyberduck的文件上传到可以写入的文件夹(例如,cyberduck连接的用户的主文件夹)。然后,我通过ssh登录到计算机,然后将文件sudo MV移至所需的目标文件夹。
第三种解决思路
我认为最好的解决方案是在ssh中使用sudo来修改权限。您甚至可以编写一个小的Shell脚本来在工作时为您提供访问权限,并在完成后再设置权限。
我真的很好奇是否有更好的方法可以做到这一点,但是我很确定没有。