我有一个多个用户可以访问的目录。他们更改、上传和删除目录中的文件。他们都属于同一个用户组。该目录中的文件具有 660 的访问权限。
问题是如果用户不是该文件的所有者,则用户无法设置文件的修改时间。
例如,用户 AAA 上传了一个文件“EXAMPLE.jpg”,用户 BBB 下载了它,修改了它并再次上传。文件的“上次修改”时间戳将是 BBB 上传它的时间,而不是真正上次修改的时间。我尝试将文件的权限设置为 777,但没有帮助。
问题在 sftp-logs 中显示为:
Dec 5 16:37:08 servername sftp-server[695]: open "/shared_directory/EXAMPLE.jpg" flags WRITE,CREATE,TRUNCATE mode 0666
Dec 5 16:37:08 servername sftp-server[695]: close "/shared_directory/EXAMPLE.jpg" bytes read 0 written 42765
Dec 5 16:37:08 servername sftp-server[695]: set "/shared_directory/EXAMPLE.jpg" modtime 20111205-15:53:31
Dec 5 16:37:08 servername sftp-server[695]: sent status Permission denied
Run Code Online (Sandbox Code Playgroud)
Winscp 会抱怨这种情况Upload of file 'example.jpg' was successful, but error occurred while setting the permissions and/or timestamp. If the problem persists, turn on 'ignore …