一、用户分类
Linux下有两种用户:超级用户(root)、普通用户。
超级用户:可以不受限制地在Linux下做任何事 【命令提示符是“#”】
普通用户:受一定地约束,能做有限的事。【命令提示符是“$”】
Q:如何相互转换?
A:su [用户名]
①普通用户转向root(输入的是root的密码)
②root转向普通用户——su user
二、权限管理
1、文件的访问者一共分三类:
(1)文件和文件目录的所有者——拥有者(user)
(2)文件和文件目录的所有者所在的组的用户——所属组(group)
(3)其它用户——others
2、文件属性也分三种:
(1)r (4)—read(读)对文件:具有读取文件内容的权限;对目录:具有浏览该目录信息的权限
(2)w(2)—write(写)对文件:具有修改文件内容的权限;对目录:具有删除移动目录内文件的权限
(3)x(1)—execute(执行)对文件:具有执行文件的权限;对目录:具有进入目录的权限
如果是 “—”,说明不具有该权限
权限符号(读写执行) | 八进制 | 二进制 |
r | 4 | 100 |
w | 2 | 010 |
x | 1 | 001 |
rw | 6 | 110 |
rx | 5 | 101 |
wx | 3 | 011 |
rwx | 7 | 111 |
--- | 0 | 000 |
3.文件类型有很多种:
(1)d:文件夹
(2)-:普通文件
(3)l:软链接(类似Windows的快捷方式)
(4)b:块设备文件(例如硬盘、光驱等)
(5)p:管道文件
(6)c:字符设备文件(例如屏幕等串口设备)
(7)s:套接口文件
三、权限访问的相关设置
1、chmod——设置文件的访问权限
格式:chmod [参数] 权限文件名
常用选项:R -> 递归修改目录文件的权限 【只有文件的拥有者和root才可以改变文件的权限】
方法(1)用户表示符+/-=权限字符
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
方法(2)三位8进制数字
其他指令:
chown——修改文件的拥有者
格式:chown [参数] 用户名文件名
# chown user1 f1
# chown -R user1 filegroup1
chgrp——修改文件或目录的所属组
格式:chgrp [参数] 用户组名文件名
常用选项:-R 递归修改文件或目录的所属组
2、umask——查看或修改文件掩码
新建文件夹默认权限=0666 【八进制】
新建目录默认权限=0777 【八进制】
Q:为什么系统规定一个目录必须是777开始?
A:所有的目录被创建出来,一般都要能被进入(x)
umask的默认权限掩码是0002。凡是在umask中出现的权限,必须在起始权限中去掉
在umask默认中:要去掉的权限为是1.要保留的位是0.
最终权限=起始权限&(~umask)
(&相同为1,不同为0)
举例:umask 0444 ——100 100 100
则~mask ——011 011 011
文件的起始权限0666——110 110 110
011 011 011
010 010 010——222(--w--w--w-)
举例:umask 0222 ——010 010 010
则~mask ——101 101 101
文件的起始权限0666——110 110 110
101 101 101
100 100 100——444(-r--r--r--)