文章目录
UGO权限
在Linux中将文件可存取身份分为三类:owner、group、others,我们称为权限对象,且这三类身份都具有:read、write、execute等权限,我们称为权限类型。
权限对象
owner
文件拥有着,我们也称为属主,由于Linux是一个多任务多用户的系统,因此会有很多人来使用这部主机,为了考虑每个人的隐私,文件所有者这个权限就尤为重要。
group
群组是权限中最有用的功能之一,群组简单理解就是用户组,类似于部分之间或学校的班级之间的划分,群组内的资源是共享的,群组之间是相互隔离的。
others
非文件的拥有着,或者文件的所属组以外的用户
权限类型
Linux权限基于UGO模型进行控制,U代表User,G代表Group,O代表Other;每一个文件的权限基于UGO进行设置Linux的基本权限分为读、写、执行(r、w、x),可用数字4、2、1来表示。
当我们执行ls -l命令时会看到类似以下内容:
属主:用户若是文件的主人,则匹配属主的权限,权限在文件的左三位,即第一个rwx;
属组:用户与属组在同一个组,则匹配属组的权限,权限在文件的中三位,即第二个rwx;
其他:用户即不是属主也不是属组,则匹配其他的权限,权限在文件的右三位,即第三个rwx;
权限项 | 字符、数字表示 |
---|---|
读 | r、4 |
写 | w、2 |
执行 | x、1 |
没有权限 | - 、0 |
权限组合机制
rwx权限说明
对文件而言
权限 | 说明 |
---|---|
r | 可获取文件得数据 |
w | 可修改文件数据 |
x | 可以将此文件运行为进程 |
对目录而言
权限 | 说明 |
---|---|
r | 可使用ls命令获取其下的所有文件列表 |
w | 可修改此目录下的文件列表,即可创建或删除文件 |
x | 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息 |
权限管理命令
权限管理命令chmod
三类用户:
u:属主
g:属组
o:其他人
a:所有
(1)chmod [选项]… MODE [,MODE] FILE…
MODE表示法:
- 赋权表示法:直接操作一类用户的所有权限位rwx;
u=
g=
o=
a= - 授权表示法:直接操作一类用户的一个权限位r,w,x;
u+,u-
g+,g-
o+,o-
选项 :-R 递归修改
注意:用户仅能修改属主为自己的那些文件的权限
【例1】授权表示法:给file1的属主一个可执行权限
[root@localhost ~]# ll
总用量 4
-rw-------. 1 root root 1257 7月 2 23:22 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 7月 24 11:36 file1
[root@localhost ~]# chmod u+x file1
[root@localhost ~]# ll
总用量 4
-rw-------. 1 root root 1257 7月 2 23:22 anaconda-ks.cfg
-rwxr--r--. 1 root root 0 7月 24 11:36 file1
【例2】授权表示法:继例1后再对file进行权限设置,用-R选项实现递归赋权
[root@localhost ~]# chmod -R u-x,g+w,o+w file1
[root@localhost ~]# ll
总用量 4
-rw-------. 1 root root 1257 7月 2 23:22 anaconda-ks.cfg
-rw-rw-rw-. 1 root root 0 7月 24 11:36 file1
【例3】赋权表示法:给file1的属组赋予rwx权限
[root@localhost ~]# chmod g=rwx file1
[root@localhost ~]# ll
总用量 4
-rw-------. 1 root root 1257 7月 2 23:22 anaconda-ks.cfg
-<