我有一个 ext4 分区,并且我已将所有子目录的组所有者设置为 mygroup:
# chgrp -R mygroup /mount/abc
# chmod -R g+swrx /mount/abc
Run Code Online (Sandbox Code Playgroud)
我的用户是该组的一部分。该分区内有一个文件夹,该文件夹归用户“nobody”所有,现在归“mygroup”组所有。我的用户是“mygroup”的一部分。这是一个 ls -l:
myuser@host:/mount/abc/folder$ ls -l
drwxr-sr-x 2 nobody mygroup 4096 Apr 25 12:08 ./
drwxrwsrwx 6 nobody mygroup 4096 Apr 24 07:57 ../
-rw-r-xr-- 1 otheruser mygroup 159539 Apr 23 23:44 test.png*
myuser@host:/mount/abc/folder$ groups myuser
myuser : mygroup {... a list of other groups also...}
myuser@host:/mount/abc/folder$ rm test.png
rm: remove write-protected regular file ‘test.png’? y
rm: cannot remove ‘test.png’: Permission denied
myuser@host:/mount/abc/folder$ touch test.txt
touch: …Run Code Online (Sandbox Code Playgroud) 服务器上存在用户“user”。服务器上存在组“homeusers”。
这就是正在发生的事情:
user@localhost / $ ssh user@server
user@server:~$ lsb_release -a
Description: Ubuntu 12.04.3 LTS
user@server:~$ cd /mount/somedir/
user@server:/mount/somedir$ ls -al
drwxrwxrwx 1 root root 4096 Nov 24 20:55 .
drwxr-xr-x 5 root root 4096 Nov 30 10:11 ..
drwxrwxrwx 1 root root 4096 Dec 2 02:11 somechild
user@server:/mount/somedir$ sudo chown -v user:homeusers somechild
changed ownership of `somechild' from root:root to user:homeusers
user@server:/mount/somedir$ ls -al
drwxrwxrwx 1 root root 4096 Nov 24 20:55 .
drwxr-xr-x 5 root root 4096 Nov 30 …Run Code Online (Sandbox Code Playgroud)