Linux的权限
1.Linux的权限管理
1.文件访问者的分类
文件和文件目录的所有者:u--User
文件和文件目录的所有者所在的组的用户:g-Group
其它用户:o-Other
2.文件类型和访问权限
文件类型
d:文件夹
-:普通文件
l:软连接
p:管道文件
c:字符设备文件
s:套接口文件
基本权限:
读(r):Read对文件而言,具有读取文件内容的权限,对目录来说,具有浏览该目录信息的权限
写(w):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限、执行(x):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
“-”表示不具有该项权限
root@iZbp1be068ksa92vuf0kbdZ:~# su zym
zym@iZbp1be068ksa92vuf0kbdZ:/root$ su -
Password:
root@iZbp1be068ksa92vuf0kbdZ:~# pwd
/root
前面的字符,第一是文件类型,后面的九个分成三份,第一份rwx则是拥有者,表示拥有者可以读写和执行这三个权限,还需要知道的是给了权限是可以有机会做,但不是给了机会就一定能做,第二份则是所有组的权限,r-x表示可以读可以执行但不可以写,第三份表示其它Other,r-x表示可以读可以执行但不可以写。
2.文件访问权限的相关设置方法
1.chmod
功能:设置文件的访问权限
chmod命令权限值的格式:
用户表示符+/-=权限字符
+:先权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者的其它组员
o:其它用户
a:所有用户
另一种设置方式:三位八进制数字
代码示例:
把2的权限从rwxr-xr-x -> rwxrwxrwx
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 drwxrwxr-x 3 root root 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~# chmod o+w /root/2
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 drwxrwxrwx 3 root root 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~#
三位八进制的设置:
root@iZbp1be068ksa92vuf0kbdZ:~# chmod 000 /root/2
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 d--------- 3 root root 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~# chmod 666 /root/2
root@iZbp1be068ksa92vuf0kbdZ:~# ls la
ls: cannot access 'la': No such file or directory
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 drw-rw-rw- 3 root root 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~#
2.chown
功能:修改文件的拥有者
代码示例:
注意:用chown改名字的前提是这个名字是机器的一个用户,不能随意输入不是机器用户的名字
chown zym:zym 路径 可以同时改俩个,用户者和所有者。
4 drw-rw-rw- 3 zym zym 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~# chown zym 2
root@iZbp1be068ksa92vuf0kbdZ:~# ls
2 aaa c dir1 file22 path1 temp.txt temp.txt.tar.gz test.c yy
a b dir file mystudy snap temp.txt.tar test1.c y zz
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 drw-rw-rw- 3 zym zym 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 root root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root root 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~# chown ztm 2
chown: invalid user: ‘ztm’
root@iZbp1be068ksa92vuf0kbdZ:~# chown zyy /root/2
chown: invalid user: ‘zyy’
root@iZbp1be068ksa92vuf0kbdZ:~# chown zym a
root@iZbp1be068ksa92vuf0kbdZ:~# chown zyy aaa
chown: invalid user: ‘zyy’
root@iZbp1be068ksa92vuf0kbdZ:~#
3.chgrp
功能:修改文件或目录的所属组
代码示例:
root@iZbp1be068ksa92vuf0kbdZ:~# chgrp zym aaa
root@iZbp1be068ksa92vuf0kbdZ:~# ls -ls
total 80
4 drw-rw-rw- 3 zym zym 4096 Nov 9 11:46 2
4 drwxr-xr-x 4 zym root 4096 Nov 17 11:12 a
4 drwxr-xr-x 4 root zym 4096 Nov 17 11:45 aaa
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 b
4 drwxr-xr-x 2 root root 4096 Nov 8 15:51 c
4 drwxr-xr-x 2 root root 4096 Nov 8 17:03 dir
4 drwxr-xr-x 3 root root 4096 Nov 8 17:06 dir1
4 -rw-r--r-- 1 root root 13 Nov 8 17:01 file
4 -rw-r--r-- 1 root root 131 Nov 9 10:16 file22
4 drwxr-xr-x 3 root root 4096 Nov 8 11:06 mystudy
4 drwxr-xr-x 3 root root 4096 Nov 8 16:35 path1
4 drwx------ 3 root root 4096 Sep 26 16:43 snap
4 -rw-r--r-- 1 root root 25 Nov 17 11:06 temp.txt
12 -rw-r--r-- 1 root root 10240 Nov 17 11:27 temp.txt.tar
4 -rw-r--r-- 1 root root 146 Nov 17 11:29 temp.txt.tar.gz
0 -rw-r--r-- 1 root root 0 Nov 9 11:16 test1.c
0 -rw-r--r-- 1 root root 0 Nov 8 09:17 test.c
4 -rw-r--r-- 1 root root 9 Nov 8 17:00 y
4 -rw-r--r-- 1 root root 8 Nov 8 15:55 yy
4 -rw-r--r-- 1 root root 13 Nov 8 17:00 zz
root@iZbp1be068ksa92vuf0kbdZ:~#
4.umask
功能:
查看或修改文件掩码
新建文件默认权限=0666(缺省权限)
新建目录默认权限=0777
但实际上你所建的文件和目录,看到的权限往往不是上面这个值。因为创建文件或目录的时候还要受到umask的影响,假设默认权限是umask,则实际创建的出来的文件权限是:mask&~umask(注意umask有一个取反)
说明:超级用户默认掩码值为0022,普通用户为0002。(第一个0不用看则是002,变为000 000 010)
理解Linux多用户之间怎么互相隔离
因为这里的所属组和other都是 - ,所以别的用户无法进到你这里以及其它操作。