欢迎来到我的:世界
希望作者的文章对你有所帮助,有不足的地方还请指正,大家一起学习交流 !
目录
前言:
该文章介绍了Linux系统的权限问题,并且给出解释,欢迎大家的访问!!
Linux下的用户类型
Linux的下面两种用户:超级用户(root) , 普通用户;
- 超级用户:可以再linux系统下做任何事情,不受限制
- 普通用户:在linux下做有限的事情
两用户的切换:
用到命令:su
用法:如要从普通用户切换到root用户,可以使用 su
或 su -
命令,两者命令的区别在于:su
命令本质是用户身份切换到root;而su -
命令本质是以root身份重新登陆一次。
若要从root用户切换到普通用户,命令:su (普通用户名)
。
需要注意:
当普通用户切换到root都是需要root用户的密码;
当root用户切换到普通用户不需要密码认证;
而普通用户切换到普通用户则需要被切换到的普通用户的密码;
到这里我们应该了解了两种用户的权限概念了,权限是用来限制人的,但root用户不受限制。
sudo命令
功能:对指定的指令进行提权。
解释:关于权限,在普通用户的时候,有些指令是没有权限进行的这时候在指令面前加上sudo 就给该指令进行提权,使其有权限。
注意:
- 当一个用户的用户名在该配置文件中,才允许这个用户执行sudo。
- 若一个用户的用户名不再该配置文件中,不允许这个用户执行sudo。
Linux权限管理
文件访问者的分类
- 文件和文件目录所有者:
u
- 文件和文件目录所有者所在的组的用户:
g
- 其他用户:
o
文件类型
该是test.c文件的所有属性列表,
其中最前面的第一个字符表示其文件类型:-
代表该文件类型是普通文件;
还有其他类型的文件,在这里我介绍几种比较常见:
d
:表示目录文件(文件夹);
l
:表示链接文件;
b
:块设备文件;
p
:管道文件;
c
:字符设备文件;
基本权限
- 读(r):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
- 写(w):对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
- 执行(x): 对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
- “—”表示不具有该项权限
文件权限值的表示方法
1 . 字符表达方法
Linux表示 | 说明 |
---|---|
- - - | 无权限 |
r - - | 只读 |
- w - | 仅可写 |
- - x | 仅可执行 |
r w - | 可读可写 |
r - x | 可读可执行 |
- w x | 可写可执行 |
r w x | 可读可写可执行 |
- 进制数值表达方法
权限符号 | 八进制 | 二进制 |
---|---|---|
r - - | 4 | 100 |
- w - | 2 | 010 |
- - x | 1 | 001 |
r w - | 6 | 110 |
r - x | 5 | 101 |
- w x | 3 | 011 |
r w x | 7 | 111 |
- - - | 0 | 000 |
注意:
既然可以用进制数值表达法那就代表可以用进制数值来表示权限符号:
这样表示:chmod 664 文件名 ;其中chmod命令在后面有介绍,而664
代表的就是rw-rw-r--
chmod命令
功能:设置文件的访问权限
格式:chmod [参数]权限 文件名
常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限.
用户表示符+/-=权限字符
- +:向权限范围增加权限代号所表示的权限
- -:向权限范围取消权限代号所表示的权限
- =:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
示例:chmod 用户符号+/-/=权限字符 文件名
实例,给某文件的拥有者增加某权限:
chown命令
功能:修改文件的拥有者
格式:chown [参数]用户名 文件名
说明:如果是普通用户将文件名修改,不被允许,需要提权:加上sudo 或者可以切换成root用户也可以直接进行修改。
补充:
也可以:chown root:root 文件名
该指令将文件的拥有者和所属组都改成root
chgrp命令
功能:修改文件或目录的所属组
格式: chgrp [参数] 用户组名 文件名
常用选项: -R 递归修改文件或目录的所属组
file命令
功能说明:辨识文件类型
语法: file [选项] 文件或目录
常用选项:
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容
默认权限
解释:创建文件时的默认权限
在Linux系统中创建普通文件的起始权限是:666
也就是 rw-rw-rw-
而创建目录文件的起始权限是:777
也就是rwxrwxrwx
umask(权限掩码)
定制一个文件被创建的时候的默认权限
那umask是怎么使用的?
默认情况下系统中umask的值是 :0002 只需要看八进制的位,也就是002;
umask的值也可以修改;
而默认权限=起始权限去掉umask中出现的权限;
起始权限 & (~umask)=默认权限
;
目录权限
目录权限和文件的权限不同,一定要做好区分;
1. 可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.
2. 可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容。
3. 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.
注意:一个文件能否被删除,并不取决于文件本身!而取决于文件所处的目录拥有者是否有w权限!!
粘滞位
想要了解粘滞位我们需要了解一个知识点:
tmp目录文件: 是系统下一个共用的目录文件,所有的用户都能使用;这就意味着该目录文件的other(其他用户)的rwx权限也全部放开了,所有的用户都可以操作该目录文件;但如果你在其中写的一个文件突然有一天不想给别人看了,可以该变其文件权限为:000,这样谁都无法读写,但是别人还是可以进行删除(文件的删除取决于该文件目录的w权限),这时候就给other(其他用户)新增一个权限:t
这就叫做粘滞位;
粘滞位: 是给目录中other(其他用户)设置的一个权限位,具有x(可执行)的意义,同时也进一步对目录文件进行特殊限定:该目录中的文件,只有root或文件的拥有者有权利进行删除!其他人一律不允许!!!
语法:chmod o+t 文件名
总结
到了最后:感谢支持
------------对过程全力以赴,对结果淡然处之