背景:遇到一个问题,希望对于服务器的文件夹仅有部分用户可以操作,这里采用group实现
1,查看当前用户的组信息
命令:groups
在新建一个用户的时候,每个人都属于自己用户名的一个组,通过groups命令查看
1.1groups 如果后面不加参数,表示查看当前用户的组信息
比如我用root权限的时候,发现属于root组,用自己账户登陆属于自己的一个组,同时我还在sudo组中
1.2groups 后加参数 其他用户名,则查看其他用户组信息
如ivan 属于三个组
2,新建一个组groupadd 命令,需要在root权限操作
命令: groupadd new-group-name
root@SYS-7048GR-TR:~# groupadd aiteacher
3,将一个已存在用户添加到一个组中
命令:usermod -a -G group-name user-name
添加完成后重新查看我的组信息,发现多了一个组信息
4,修改文件夹组信息
我们先切换到需要修改的文件夹目录下,修改ai_teacher 文件夹,可以发现该文件夹中文件夹cases所属用户及组均为ivan
我们先尝试修改组信息
将ai_teacher 文件夹及其中文件组信息修改为aiteacher
root@SYS-7048GR-TR:/home/ai_lab_data# chgrp -R aiteacher ai_teacher/
发现这个文件夹及其中文件夹及文件的组均修改为aiteacher,但是仍然无法在这个路径下新建文件夹等操作
此时需要修改文件夹权限为770,第一个7表示owner用户拥有读写操作的全部权限,第二个7表示所属群组的全部权限,第三个0表示其他用户没有权限
chmod 770 -R ai_teacher/
这样同group的其他用户也拥有了操作权限
5 ps
如果一个用户此时新提交了一些文件,那么这些文件的owener为用户自己,需要手动修改组的信息为aiteacher
chown -R liujiefei:aiteacher QA-data/
该命令表示将这个文件夹及内部文件的owner及group修改为liujiefei和aiteacher
如果你只希望修改group信息,也可以:
chown -R :aiteacher QA-data/