无法通过 FTP 删除拥有的文件夹

无法通过 FTP 删除拥有的文件夹

我知道这个问题已经被问过很多次了,但我找不到解决方案。

所以我使用vsftpdandFileZilla作为客户端

/var/www/

drwxrwsr-x+  8 myuser ftpusers 4.0K Sep  2 10:37 html

/var/www/html/

drwxrwxrwx   3 myuser ftpusers 4.0K Sep  2 10:38 directory

尽管我拥有该目录,但我无法删除该目录

FileZilla 日志说

rmdir /www/html/directory: failure

我已经在 HTML 文件夹上尝试过 777 但没有成功。尽管它只是在命令行上运行。

将 python 脚本从 更改为 后os.mkdiros.system("mkdir")问题似乎消失了,但我很感兴趣是否有人能给我线索。

/var/www$ getfacl html
# file: html
# owner: myuser
# group: ftpusers
user::rwx
group::rwx
group:admin:rwx
group:synchronizer:rwx
mask::rwx
other::--x

答案1

在您的目录列表中

drwxrwsr-x+  8 myuser ftpusers 4.0K Sep  2 10:37 html

“+”表示有扩展权限html目录上。当您使用运行时调用(例如,os.mkdir而不是 shell 命令)时os.system,两者可能首先使用进行检查access如果您被允许删除此目录 - 或者他们可能不会(取决于操作系统来决定)。

Debian 维基权限提到了这种可能性:

最后一列是+符号。现在列出目录时您不太可能看到它(它将显示为空),但这意味着扩展访问规则已生效,因此文件的真正权限不仅仅是文件访问模式所说的- 您可以在本指南中阅读下面有关 ACL 的信息。

您的问题可能是(例如)ACL 禁止删除使用给定组 ID 运行的某些内容(其中 ftp 进程使用其自己的组运行),或者访问检查可能会注意到 ftp 守护进程是否使用不同的组运行真实用户

进一步阅读:

相关内容