删除具有写组权限的文件

Remove file with write group permission

我正在使用 Raspbian Stretch Lite 并按照官方 tutorial from RapberryPi.org 设置 Pure-FTPd。所以现在我有一个虚拟用户可以通过 ftpuser:ftpgroup 拥有的 FTP 创建文件。 我还使用以下命令在 ftpgroup 中添加 pi 用户:

usermod -a -G ftpgroup pi

但是当我尝试删除由 ftpuser 创建的文件时,它显示

Operation not permitted

这是我的控制台的副本:

pi@raspberry(rw):/var/ftp$ ls -la
total 4
drwxrwxrwt  2 root    root       60 Jun 20 15:58 .
drwxr-xr-x 11 root    root     4096 May  7 17:04 ..
-rwxrwxrwx 1 ftpuser ftpgroup 0 Jun 20 16:03 test
pi@raspberry(rw):/var/ftp$ whoami
pi
pi@raspberry(rw):/var/ftp$ grep -i --color 'ftpgroup' /etc/group
ftpgroup:x:1001:pi
pi@raspberry(rw):/var/ftp$ rm test
rm: cannot remove 'test': Operation not permitted

我不明白为什么我不能删除 test 文件,如果我在 ftp 组中并且该组有写权限。

您还需要目录的写入权限。您更改目录。

为了说明这一点:

[ronald@lion tmp]$ ls -la
total 0
drwxr-xr-x. 2 root   root    19 Jun 20 15:48 .
drwx------. 6 ronald ronald 195 Jun 20 15:48 ..
-rw-r--r--. 1 ronald ronald   0 Jun 20 15:48 hallo
[ronald@lion tmp]$ rm hallo
rm: cannot remove ‘hallo’: Permission denied
[ronald@lion tmp]$ id
uid=1000(ronald) gid=1000(ronald) groups=1000(ronald) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[ronald@lion tmp]$ su
Password: 
[root@lion tmp]# chmod 777 .
[root@lion tmp]# exit
[ronald@lion tmp]$ ls -la
total 0
drwxrwxrwx. 2 root   root    19 Jun 20 15:48 .
drwx------. 6 ronald ronald 195 Jun 20 15:48 ..
-rw-r--r--. 1 ronald ronald   0 Jun 20 15:48 hallo
[ronald@lion tmp]$ rm hallo
[ronald@lion tmp]$ 

您需要使用 sudo usermod -a -G ftpgroup pi 的写入权限,或者您可以使用 visudo 将 pi 用户添加到 sudo 组,它对我有用,请尝试一次并告诉我。