即使用户有权限,也无法通过 SFTP 重命名文件

即使用户有权限,也无法通过 SFTP 重命名文件

我有两台计算机都运行 Windows 10。

计算机 A 正在运行 ssh 服务器,而计算机 B 尝试通过 sftp 连接。

我已将 sshd_config 设置如下:

Subsystem   sftp    sftp-server.exe

AllowUsers test
ForceCommand internal-sftp
ChrootDirectory "E:\MyData"

用户test不属于任何组。

里面E:\MyData有一个名为的文件test.txt,并且用户test在计算机A上有读取,写入和修改它的权限。

通过 sftp 连接工作正常,我可以正确读取文件。但是当我尝试重命名或删除它时,我收到一条错误消息,提示我没有足够的权限:

> sftp test@myip
> rename test.txt new.txt
Couldn't rename file "/test.txt" to "/new.txt": Permission denied

我错过了什么?

答案1

“读取、写入和修改的权限”不授予您重命名或删除的权限。

重命名和删除被视为对父目录的操作,而不是对文件的操作。因此,您需要修改父目录的权限。在 Windows 和 *nix 上都是如此。这实际上不是 SFTP 问题。

相关内容