Linux下有两种用户:超级用户(root)、普通用户。
- 超级用户:可以再linux系统下做任何事情,不受限制 。 超级用户的命令提示符是“#”。
- 普通用户:在linux下做有限的事情。普通用户的命令提示符是“$”。
切换命令:su <用户名>
ps:要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令。
为了方便我们使用 root 权限,防止来回切换用户带来的繁琐,所以我们可以使用 sudo 临时给某一指令赋予 root 权限。在使用该指令时候需要配置,方法如下:
- ①:切换到 root 用户,打开 /etc/sudoers 文件
- ②:找到该文件的 90 行左右加入 普通用户
- ③:配置成功
文件访问者的分类
- 文件和文件目录的所有者:u—User
- 文件和文件目录的所有者所在的组的用户:g—Group
- 其它用户:o—Others
文件访问基本权限
- 读 r :Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
- 写 w :Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
- 执行 x :execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
- “—”表示不具有该项权限
权限相关指令
umask : 查看/修改默认创建权限掩码
- umask 053 :设置默认权限掩码为053(注意:真正创建出文件的权限是:777&(~053)= 724)
- umask -S : 检查新创建文件的默认权限
chmod : 修改文件权限
- chmod < ugoa > +/- < rwx > 或者 chmod <八进制数字>
chown : 修改文件的所有者
- chown < 用户名 > < 文件名>
chgrp : 修改文件的所属组
- chgrp < 用户组名 > < 文件名 >
目录的权限
- 可读权限: 如果目录没有可读权限, 则无法用 ls 等命令查看目录中的文件内容.。
- 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件。
- 可执行权限: 如果目录没有可执行权限, 则无法cd到目录中。
- 目录的可执行权限是表示你可否在目录下执行命令。
- 如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd 进入目, 即使目录仍然有-r 读权限(这 个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)
- 如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读 权限 ,所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档。
但是,就是只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写 权限。为什么一个用户创建的文件可以被另外一个用户删掉,所以为了解决这个问题,所以有了沾滞位:
- chmod +t <目录>
当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由:
- 超级管理员删除
- 该目录的所有者删除
- 该文件的所有者删除