情况是这样的。系统管理员给了我一把钥匙。它以我的名字命名。当我登录到终端时,我只需执行以下操作:
ssh -i keyfile username@ip
因此在服务器上我以自己的身份登录,但我需要做
sudo su dev
以便能够访问某些目录。现在我的问题是,根据系统管理员的说法,我使用该密钥文件的权限没有任何限制。我可以用它在服务器上做任何事情。“但是”,当我尝试使用 cyberduck for mac 时,我无法拖放文件,因为我无法sudo su dev
在 cyberduck 中执行此操作,因为密钥文件是以我的名字命名的。那么我该怎么做sudo su dev
,因此切换到该dev
名称以便能够在 cyberduck 中拖放文件?因为现在,我所能做的就是使用该 ssh 客户端查看服务器中的目录和文件。除非我进入终端并执行 sudo su dev
答案1
通常您无法sudo
通过scp
或sftp
,但可以通过ssh
命令提示符来执行。我不知道它是如何Cyberduck
工作的,但我看到它确实如此sftp
,所以我认为您运气不佳。
您应该获得一个密钥来dev
直接访问该帐户,或者让您的系统管理员更改权限或其他操作以允许您开展工作。
有人讨论了当您不是 root 时使用 scp 以 root 身份复制文件的不同方法。有人甚至写了自己的脚本(向下滚动)。
https://askubuntu.com/questions/208378/how-do-i-copy-files-that-need-root-access-with-scp
好消息看起来 WinSCP 内置了一些技巧,允许你sudo
在连接后、使用前sftp
执行此操作。也许你可以通过以下方式运行它葡萄酒。
如果您想使用 Cyberduck,我建议您联系系统管理员并让他修复所有这些问题或阅读它的手册并希望它能够实现 WinSCP 声称的功能。