在 unix 主机上,我以“userA”身份登录,并拥有一个具有以下权限的目录“test”
drwxrwxrwx
我可以在“测试”目录中创建一个文件。
然后我用 'userB' (sftp userB@remotebox) sftp 到一个远程盒子,并成功地 Cd'ed 到该盒子上的一个远程目录,并且可以看到该远程目录中的文件。然后我从那个远程目录“get myFile”,我得到这个消息:
将 /remoteDir/myFile 提取到 myFile 无法处理:权限被拒绝
我需要检查什么?
Couldn't get handle: Permission denied
“无法获取句柄”表示 sftp 客户端无法获取远程资源的句柄。在这种情况下,资源是您要获取的文件。“权限被拒绝”是一条标准消息,表示您的远程用户 ID 没有访问相关文件的权限。
正如您在评论中指出的那样:
我试图在远程框中获取的文件是:-rwxrwx--- 并且“userB”不属于该文件所有者的组。
所以“userB”实际上没有读取远程文件的权限。
尝试在用户的主目录上将权限设置为 755 (-rwxr-xr-x)。
同样的问题,缺少读取权限,我正在尝试下载证书。我所做的是将要下载的文件cp到用户目录并将权限设置为777(如上所述,755可以)chmod 777 filepath,然后我可以下载它。
问题在于对远程目录的上传权限。检查您是否具有远程目录的适当写入权限。