Linux 权限位详解
1. Linux 权限位对于权限,有点绕,因为文件的权限和目录的权限是有一些区别的。 在Linux中,有5种权限,分别是,r、w、x、s、t。
下面依次讲解权限位: 1.1 可读权限对于文件,可读权限:
对于目录,可读权限:
1.2 可写权限对于文件,可写权限:
对于目录,可写权限:
1.3 可执行权限对于文件,可写权限:
对于目录,可写权限:
1.4 Setuid这是一个特殊的权限位, 对于文件,Setuid:
Setuid最常用的是配合执行权限x使用,例如,系统中内置命令passwd,它默认是带有s权限位,passwd命令的主要功能是修改用户的密码,而修改密码的流程是:
在普通用户尝试执行passwd,该passwd的所有者是root并且设置了Suid,因此passwd以root身份执行。
1.5 Setgid这是一个特殊的权限位, 对于目录,Setgid:
当一个目录拥有sgid权限时,其他用户在该目录下创建文件或目录后,它会继承目录的id,即创建的文件或目录的属组为父目录的属组。 [[email?protected] data]# mkdir project [[email?protected] data]# chmod 2777 project/ [[email?protected] data]# ls -lh total 0 drwxrwsrwx 2 root root 6 Apr 20 23:42 project [[email?protected] data]# su bob [[email?protected] data]$ mkdir project/test_for_bob [[email?protected] data]$ ls -lh project/ total 0 drwxrwsr-x 2 bob root 6 Apr 20 23:42 test_for_bob 1.6 粘滞位这是一个特殊的权限位, 对于目录粘滞位:
2. Linux 权限表3. ls -l 输出详解例如:
4. umask 掩码umask是一个内置命令。其作用是指定创建的文件或目录的默认权限。 使用方法:
使用不加任何参数的umask会打印出八进制的权限:默认
例如:手动更改,可使用八进制,也可以使用字符表示 [[email?protected] data]# umask 0022 [[email?protected] data]# mkdir test_dir [[email?protected] data]# touch test_txt [[email?protected] data]# ls -lh total 0 drwxr-xr-x 2 root root 6 Apr 21 01:34 test_dir -rw-r--r-- 1 root root 0 Apr 21 01:34 test_txt [[email?protected] data]# rm -rf * [[email?protected] data]# umask 0777 [[email?protected] data]# mkdir test_dir [[email?protected] data]# touch test_txt [[email?protected] data]# ls -lh total 0 d--------- 2 root root 6 Apr 21 01:37 test_dir ---------- 1 root root 0 Apr 21 01:37 test_txt
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |