Hello~大家好!我是今越,本文内容来源于平时的学习笔记,希望对大家有所帮助。鉴于个人水平有限,文中难免会有不足之处,欢迎留言评论。需要转载的朋友,请注明出处。感谢点赞和收藏。一起加油!:)
往期文章回顾
Linux 操作系统 01 - 目录篇
Linux 操作系统 02 - 文件篇
Linux 操作系统 03 - 用户和组管理
Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。
一、文件属性
从左至右用 0 - 9 这些数字来表示:
- 第 0 位:确定文件类型;
- 第 1 - 3 位:确定属主(该文件的所有者)拥有该文件的权限;
- 第 4 - 6 位:确定属组(所有者的同组用户)拥有该文件的权限;
- 第 7 - 9 位:确定其他用户拥有该文件的权限;
说明
1)文件类型主要分为文件、目录和链接;
- 若是 [ d ] 则是目录
- 若是 [ - ] 则是文件
- 若是 [ l ] 则表示为链接文件
- 若是 [ b ] 则表示为装置文件里面的可供储存的接口设备 ( 可随机存取装置 )
- 若是 [ c ] 则表示为装置文件里面的串行端口设备,例如键盘、鼠标 ( 一次性读取装置 )
2)[ r ] 代表可读(read)、[ w ] 代表可写(write)、[ x ] 代表可执行(execute);
3)ls -l 命令的后三项说明
-rw-r--r--. 1 root root 0 6月 13 14:33 abc
drwxr-xr-x. 2 root root 4096 6月 13 15:00 dir
文件大小,基本单位字节,如果是目录,默认显示 4096 字节;
文件的最后修改日期时间;
文件名称;
对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。同时,在 Linux 系统中,用户是按组分类的,一个用户属于一个或多个组。文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。因此,Linux 系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。
二、权限说明
1)可读权限 [ r ] = 4;
2)可写权限 [ w ] = 2;
3)可执行权限 [ x ] = 1;
说明
1)分配文件基本权限时,核心原则是在最小权限情况下能够实现要求即可;
2.1 umask
功能描述:查看默认权限
umask
说明
1)root 用户的 umask = 0022(第一位表示文件特殊权限,后三位表示文件默认权限);
2)普通用户的 umask = 0002;
3)文件默认权限最高 666;
4)目录默认权限最高 777;
2.2 rwx 作用于文件
1)[ r ]:查看文件内容(cat / more / less / head / tail);
2)[ w ]:新增,修改文件内容(vi / echo),注意不能删除文件,删除的前提是对文件所在的目录有写权限;
3)[ x ]:可以被执行;
说明
1)对于文件来说,最高权限是 x;
2.3 rwx 作用于目录
1)[ r ]:查看目录内容(ls);
2)[ w ]:对目录及其文件可以创建,删除,重命名,剪切,复制(touch / cp / mv / rm);
3)[ x ]:可以进入目录(cd);
说明
1)对于目录来说,最高权限是 w,目录只有 0,5(rx),7(rwx)三种权限;
三、chown
功能描述:修改文件属主,同时可以修改文件属组
chown [选项] 属主名[:属组名] 文件名
选项
-R
如果是目录文件,则会对所有文件进行递归修改
说明
1)用户创建了文件,就成为了文件的属主,即文件的所有者;
四、chgrp
功能描述:修改文件属组
chgrp [选项] 属组名 文件名
选项
-R
如果是目录文件,则会对所有文件进行递归修改
说明
1)用户创建了文件,文件的属组就是用户所在的属组;
五、chmod
功能描述:修改文件权限
chmod [选项] xyz 文件名
选项
-R
如果是目录文件,则会对所有文件进行递归修改
说明
第一种修改方式:通过数字修改权限
x 属主权限 y 属组权限 z 其他用户权限
r = 4 w = 2 x = 1 rxw 数字总和,即为一组权限
第二种修改方式:通过符号修改权限
x : 角色 [ u : 代表属主 g : 代表属组 o : 其他用户 a : 所有角色 ]
y : 设置 [ + : 增加 - : 减少 = : 设置 ]
z : 权限 [ r : 可读 w : 可写 x : 可执行 ]
慢慢来,保持专注,一点一点进步!
文章持续更新,感谢大家的点赞、收藏和评论,我是今越,我们下期再见:)