目录
在Linux操作系统当中,为什么要有超级用户(root)用户和普通用户的分类呢?
权限的概念
在Linux当中,将用户分为两类
- root用户:拥有Linux中的最高权限,几乎不受权限的限制
- 普通用户:在权限的约束下只能做有限的事情
su [用户名]
功能:切换用户
使用su user后,输入user的密码即可。
1.Linux权限管理
1.1 文件访问者的分类
- 文件或目录的所有者:u-User
- 文件或目录的所有者所在的组的用户:g-Group
- 其他用户:o-Other
1.2 文件类型和访问权限
![]()
可以看到一个文件被ll命令显示出来之后,文件名pro前会有一长串的字符,其中部分跟权限无关的现在不做介绍。
1 文件的类型:
- d:目录文件
- - :普通文件
- l :软链接
- b :块设备文件
- p :管道文件
- c:字符设备文件
- s:套接口文件
2.基本权限
结合上面的图
- 读(r/4):对文件而言,具有读取文件的权限;对目录文件而言,具有浏览目录信息的权限
- 写(w/2):对文件而言,具有修改文件内容的权限;对目录文件而言,具有删除移动目录内文件的作用
- 执行(x/1):对文件而言,具有执行文件的权限;对目录文件而言,具有进入目录的权限
- - 代表不具有该权限
3.文件权限值的表示方法
1.字符表示
Linux表示 | 说明 | Linux表示 | 说明 |
r-- | 仅可读 | -wx | 可写可执行 |
rw- | 可读可写 | --x | 仅可执行 |
rwx | 可读可写可执行 | r-x | 可读可执行 |
-w- | 仅可写 | --- | 无权限 |
2.数字表示
权限符号 | 八进制 | 二进制 |
r | 4 | 100 |
w | 2 | 010 |
x | 1 | 001 |
4.文件访问权限的设置
1.chmod
功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名
说明:只有文件的拥有者和root才可以修改文件权限
chmod命令权限值的格式① 用户表示符 +/-= 权限字符+:向权限范围增加权限代号所表示的权限-:向权限范围取消权限代号所表示的权限=:向权限范围赋予权限代号所表示的权限用户符号:u:拥有者g:拥有者同组用o:其它用户a:所有用户实例:# chmod u+x,g+x,o-rw pro
② 三位8进制数字实例:# chmod 777 pro![]()
#chmod 666 pro
2.chown
功能:修改文件的拥有者
格式: chown [参数] 用户名 文件名
实例:# chown huangjian pro
3.chgrp
功能:修改用户的所属组
格式:chgrp [参数] 用户组名 文件名
常用选项:-R 递归修改文件或目录的所属组
4.umask
功能:查看或修改文件掩码
新建文件夹默认权限 =0666新建目录默认权限 =0777但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到 umask的影响。假设默认权限是 mask ,则实际创建的出来的文件权限是 : mask & ~umask格式 : umask 权限值说明 :将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为 0022 ,普通用 户默认为0002 。
几个问题:
1.一个用户想要进入到一个目录当作,需要的是什么权限??
结合上面就可以知道,执行也就是x权限。当作为拥有者没有任何权限,哪怕所属组和other都有读写执行的权限拥有者也不能读写执行。
因为权限的认定只有一次。