我有一个文件夹我的文件夹有很多文件和目录,如下所示:
-rwxrwx--x user1 user1 .
-rwxrwx--x root root ..
-rw-rw---- user1 user1 file1
-rw-rw---- user1 user1 file2
-rwxrwx--x user1 user1 dir1
我想要一个用户:掌握谁能够删除所有文件和文件夹。能够做到:
rm -fr myfolder/*
执行以下操作并不能解决问题:
chown user1:master myfolder
因为用户没有子文件夹的写入权限。子文件夹是由用户1随机的。
我无法在一次性操作中更改这些文件的权限/所有者。如果我这样做,user1 将无法再创建/编辑文件。
你有什么建议吗?
答案1
我建议使用 ACL,即类似的东西setfacl -R -m u:master:rwX -m d:u:master:rwX ./myfolder
,尤其是第二部分d:u:master:rwX
与此相关,因为这意味着在myfolder
目录中创建的任何新文件都将获得rwX
用户的权限master
。
答案2
好吧,让我们这样做...
创建特殊组。
user1:~$ sudo groupadd test
品牌user1
和master
成员
user1:~$ sudo usermod -a -G test user1
user1:~$ sudo usermod -a -G test master
递归更改myfolder
目录的组和权限
user1:~$ chown -R user1:test myfolder
user1:~$ chmod -R 774 myfolder
然后你就可以得到你想要的remove
所有内容。myfolder
如果您只想 rm 文件,则递归选项允许用户 master 也修改 myfolder 的内容,并且对您拥有的目录具有简单的读写权限