Bootstrap

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都是 - ,所以别的用户无法进到你这里以及其它操作。

;