Linux|Linux的权限问题


Linux权限

    • Linux下用户权限
    • 权限提升问题
      • su命令:
    • Linux权限管理
      • ①文件访问者的分类
      • ②文件类型
      • ③权限属性
    • 文件权限值的表示方法
    • 文件权限的修改
      • chmod
      • 关于目录权限
    • 对拥有者和所属组的修改
    • 默认权限值
      • 修改初始权限值:
    • 粘滞位

Linux|Linux的权限问题
文章图片

Linux下用户权限 Linux下有两种用户:超级用户(root)、普通用户:
超级用户:可以再linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
权限提升问题 su命令:
格式:su [-][用户名]
功能:切换用户
注意:
1.切换到root用户root可以省略
2.如果只是单纯地提升某个指令的权限可以使用sudo
3.sudo短暂提升失败是由于没有被sudo的信用列表添加为信用用户
Linux|Linux的权限问题
文章图片

可以这么解决:
root下输入指令vim /etc/sudoersLinux|Linux的权限问题
文章图片

输入命令后找到如下界面,添加信任用户
Linux|Linux的权限问题
文章图片

修改成功后就可以sudo了
Linux|Linux的权限问题
文章图片

Linux权限管理 ①文件访问者的分类
文件和文件目录的拥有者:u—User
文件和文件目录的所有者所属组的用户:g—Group
其它用户:o—Others
Linux|Linux的权限问题
文章图片

②文件类型
在linux中文件的类型与后缀无关,与文件属性第一个字符有关
d:目录
-:普通文件,文本可执行程序,库
l:链接文件(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕,键盘等串口设备)
s:套接口文件
③权限属性
r: 读取
w: 写入
x: 可执行
-: 无权限
如何阐述一个文件的权限呢?
以上图中的test为例:-rw-rw-r-- 1 tzc tzc 0 Oct 4 12:42 test
可以看到该test文件权限由十个字符组成:
1.第一个字符表示普通文件
2.其后九个字符以三个为一组分别对应拥有者权限,所属组权限,以及其他用户权限
3.并且固定第一个为r,第二个为w,三个为x
文件权限值的表示方法
Linux表示 说明 八进制表示 二进制
r- - 只读 4 100
-w- 只写 2 010
- - x 仅执行 1 001
rw- 可读可写 6 110
r-x 可读可执行 5 101
-wx 可写可执行 3 011
rwx 可读可写可执行 7 111
- - - 无权限 0 000
文件权限的修改 chmod
功能:修改文件的访问权限
格式:chmod [用户参数]-权限 文件名
说明:只有文件的拥有者和root才可以改变文件的权限
用户表示符+/-=权限字符:
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
我们还可以这样修改文件权限:
Linux|Linux的权限问题
文章图片

root不受权限限制:
Linux|Linux的权限问题
文章图片

可以看到root作为文件的other并没有权限但还是可以读test1,足见root并不受权限的限制
关于目录权限
.可执行权限(x):进入目录,如果不进入目录就无法读写目录,足见x十分重要
可读权限(r):用ls命令查看目录中的文件内容
可写权限(w):在目录中创建文件,删除文件
对拥有者和所属组的修改 对文件拥有者的的修改:
sudo chown 新拥有者 文件名
对文件所属组的修改:
sudo chgrp 新所属组 文件名
注意:需要用sudo来提升权限
示例:
Linux|Linux的权限问题
文章图片

默认权限值
新建普通文件默认权限:666
新建目录默认权限:777
修改初始权限值:
umask:
格式:umask 权限值
默认:002
凡是在umask中出现了的权限位都不能在初始权限中出现
比如以普通文件为例:
666:110 110 110
002: 000 000 010
最后转化为110 110 100对应rw- rw- r–
本质上默认值=default & (~umask)
Linux|Linux的权限问题
文章图片

所以可以通过改变umask来改变文件默认权限
粘滞位 粘滞位是为了避免你的文件被别人(other)删除
当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由:
注意:(目录才有粘滞位)
一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除
【Linux|Linux的权限问题】注意:t只能加给other
Linux|Linux的权限问题
文章图片

    推荐阅读