在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念

– 所有者

– 所在组

– 其它组

– 改变用户所在的组

 

所有者

一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者

用ls ‐ahl命令可以看到文件的所有者

也可以使用chown 用户名 文件名来修改文件的所有者

 

文件所在组

当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

用ls ‐ahl命令可以看到文件的所有组

也可以使用chgrp 组名 文件名来修改文件所在的组

 

其它组

除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

 

文件权限

ls -l中显示的内容如下:

-rwxrw-r‐-1 root root 1213 Feb 2 09:39 abc

– 第一个字符代表文件(-)、目录(d),链接(l)- 10个字符确定不同用户能对文件干什么

– 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)

– 第一组rwx:文件所有者的权限是读、写和执行

– 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行

– 第三组r–:不与文件所有者同组的其他用户的权限是读不能写和执行

也可用数字表示为:r=4,w=2,x=1  因此rwx=4+2+1=7

– 1 表示连接的文件数

– root 表示用户

– root表示用户所在的组

– 1213 表示文件大小(字节)

– Feb 2 09:39 表示最后修改日期

– abc 表示文件名

 

改变权限的命令

chmod 改变文件或目录的权限

chmod 755 abc:赋予abc权限rwxr-xr-x

chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限

chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限

chmod a+r abc:给所有用户添加读的权限

查看用户和组

1.首先对于经验操作之前,我们先看下当前系统下的用户和组。whoami 查看当前登陆用户

[hadoop@mxhost1 ~]$ whoami
root
[hadoop@mxhost1 ~]$ 

2.Passwd文件存储当前系统所有用户,而组文件/etc/group记录。

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客

3.一个用户可以属于多个组,查看用户所属的组,gourps + 用户名

[hadoop@mxhost1 ~]$ groups hadoop
hadoop : hadoop
[hadoop@mxhost1 ~]$ 

更改linux文件目录文件拥有者权限

1.更改文件拥有者 (chown )

[root@linux ~]# chown  账号名称 文件或目录 ,如图把文件gongfuyujia.mp4的所属者改成hadoop

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客

2.改变文件的用户组用命令 chgrp

[root@linux ~]# chgrp  组名   文件或目录

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客

3.此外还可以通过chown命令同时修改用户和组,  chown 所有者,所属组  文件目录名

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客

4.覆盖目录权限

对于目录权限修改之后,默认只是修改当前级别的权限。如果子目录也要递归需要加R参数

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客.

5.Chown   -R : 进行递归,连同子目录下的所有文件、目录

更改linux下文件目录权限、拥有者及用户组-风君雪科技博客

参考原文:

https://blog.csdn.net/e891377/article/details/71158998

https://www.cnblogs.com/123-/p/4189072.html