修改Centos文 7件夹所在组及权限(不同用户共用一个文件夹)

如果要跟项目组的其他人共享数据,但是其他人的文件都放在自己的home目录下(比如/home/user1),需要修改权限主要有2部分。

 1.创建一个公用的组,把需要访问的用户都加到这个组里。比如都加入到data组

usermod -a -G data user2

usermod -a -G 用户组 用户名
把用户添加进入某个组(s)

然后把目标目录的group owner设置为data

chown user1:data /home/user1

 user1:data       :左边是用户,右边是组

 

2.要修改目标目录的同组访问权限,默认home目录下应该是700。这时同组用户之间就能相互查看公共目录下的文件内容了。

chmod -R 750 /home/user1 

 chmod 750 “授权文件名” 第一个数字7表示文件所有者的权限, 第二个数字5表示文件所有者同属一个用户组的其他用户的权限, 第三个数字0表示其他用户组的权限。

 

3.如果某用户是在修改权限后新创建了文件,此时其他用户依然只有读权限不能修改。需要对公共目录再修改权限

chmod -R g+s /share_folder

 为目录加上setgid标志 (setgid 只对目录有效)

setgid: 该权限只对目录有效. 目录被设置该位后, 任何用户在此目录下创建的文件都具有和该目录所属的组相同的组.

 

4. 但是在共享出的目录是允许每个用户对其具有写权限,每个用户都能创建文件,删除文件,同时也出现了用户之间可以互相删除其他用户的文件,这样给用户的一些重要的文件,面临着被删除的风险。

chmod  o+t   /share2

 为文件加上sticky标志 (sticky只对文件有效)

该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件具有写权限, 也不能删除该文件.

 

REF

https://my.oschina.net/aibati2008/blog/779020

上一篇:Java8 Collections.sort()及Arrays.sort()中Lambda表达式及增强版Comparator的使用


下一篇:网安(2)——linux帐户安全管理与技巧