权限是约束人的(某个人或某些人)
比如看某些电影需要VIP,或者是QQ空间设置只对好友开放。
其实就是某件事允许谁去做,谁不能去做。
文件权限=人+文件属性
对于人的权限约束是因为角色的关系,比如说你的校长XXX,他因为是校长才能进学校的校长室,才有校长相对的权限,而如果XXX辞职不干了,那么对应的校长权限也没了。
Linux下有两种用户:超级用户(root)、普通用户。
超级用户:可以再linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
命令: su [用户名]
功能:切换用户。
例如,要从root用户切换到普通用户user,则使用 su user(并且不需要密码)。 要从普通用户user切换到root用户则使用 suroot(root可以省略),此时系统会提示输入root用户的密码。
如果你在普通用户的情况下,想要执行某一条root权限级别的指令,这时就要在你的指令前面加一个sudo了。
提权的时候需要输入自己账户的密码。(给受信任的用户提供最少的执行障碍)
如果发生了报错说明系统不相信你的用户,需要将当前用户添加到/ect/sudoers中。
(不受信任用户只能使用普通用户的权限)
- :普通文件(源代码,库文件,可执行程序,文档压缩包等等)
d:目录文件
c:字符设备文件(键盘,显示器)
b:块设备(硬盘)
l:链接文件(快捷方式)
p:管道文件
chmod
功能: 设置文件的访问权限
格式: chmod [参数] 权限 文件名
常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
3个权限组中的除了符号操作,还能化成8进制,因为:
chgrp
功能:修改文件或目录的所属组
格式: chgrp [参数] 用户组名 文件名
常用选项: -R 递归修改文件或目录的所属组
功能说明:辨识文件类型。
语法: file [选项] 文件或目录…
常用选项:
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容。
每次我们创建一个文件的时候都会产生一个默认的权限,那么这个权限是怎么来的呢?
新建文件夹默认权限=0666
新建目录默认权限=0777
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是:
可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.
可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.
可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.
所以目录的创建必须是777开始,因为目录是必须要进入的。(进入目录必须有x权限)
chmod +t 文件