索引
- 1.shell命令及其理解
- 2.Linux权限及其理解
- 1.权限基本概念
- 2.修改权限
- 3.权限掩码umask
- 4.修改拥有者和所属组
- 3.粘滞位
1.shell命令及其理解
定义:命令行解释器
作用:
- 将使用者的命令翻译给kernal(核心)处理
- 将核心的处理结果返回给使用者
shell我们可以理解为一个外壳程序,Linux是一个OS,但是我们一般不能直接使用
理解:
如果OS的请求非常不合理,shell是可以直接拦截非法请求的,也就是起到了保护OS的目的,同时外壳的存在也避免了用户和内核直接产生联系,Linux的命令行解释器和Window中的图形化界面都可以理解成是外壳,在centos 7 常用的命令行解释器(shell)叫做bash
0
2.Linux权限及其理解
1.权限基本概念
权限的定义:
权限 = 人+事务属性
什么人对某件事情有某种属性
在Linux中将人分为两种:超级用户root,普通用户
对于文件而言将人的身份划分为三种:文件拥有者( user),文件所属组(group),其他人(other)
Window中以后缀区分文件类型,但是Linux中不以后缀区分文件类型,一般文件是什么类型的文件由第一个字母决定,
但是gcc作为Linux下的一款软件,其以文件后缀区分文件类型,其保留了Window的习惯
什么人对文件有何种操作的权利,有后九位决定,每三位表示某种用户对文件的权利
权限属性:
r:对文件而言可读取文件里面的内容,对目录而言,具有浏览目录的权利
w:对文件胃炎有修改文件内容的权利,对目录而言有新建和删除目录内文件的权利
x:对文件而言有执行的权利,对目录而言,具有进入目录的权利
-:表示不具有该权限
2.修改权限
文件的权限 = 文件的属性 + 人
所以修权限对应修改文件的属性和人。
修改文件的权限:只有文件的拥有者和root才能修改文件的权限
权限修改规则(对于文件属性):
- -R 表示递归修该目录的权限
- u:拥有者
- g:所属组
- o:others
- a:表示所有用户
- +:增加相应权限
- -:减少响应权限
- =:赋予
还可以根据三个八进制数字修改文件属性
eg:
110 111 001 表示的数字是671,对应的权限分别是 rw-rwx–x
3.权限掩码umask
定义:凡是在权限掩码中出现的权限都不应该在最终权限中出现
创造文件或者目录时会有默认权限,为了业务需求,我们可能希望某些文件自被创建出就有其我们希望的权限,而文件掩码的作用就是这个:根据用户的需求屏蔽掉不希望给别人的权限
Linux 默认umask:0002(可以被修改)(第一个0与其他权限相关,暂时不管)
新建文件的默认权限 = 0666
新建目录的默认权限是= 0777,上述的775和664都是首umask影响之后的值,实际创建出来的文件权限:mask & ~umask
eg:
umask还可以被修改,只是重启服务器之后又会变回原装,除非添加到配置文件中
4.修改拥有者和所属组
chown
修改文件拥有者
格式:chown【参数】 用户名 文件名
chgrp:
修改文件所属组
格式;chgrp【参数】用户组名 文件名
-R递归修改文件或目录的所属组
3.粘滞位
什么是粘滞位?
在使用Linux的时候当多人进行开发的时候,此时在Linux下会有一个专门的目录
存放临时文件,拥有者和所属组是root,允许其他人以other的身份在该目录下对文件
创建,读取,修改,删除等。
由于所有人多事other且权限一样,为了防止A对B的临时文件进行删除
引入了粘滞位-t
简单演示一下,先以root的身份创建一个目录tam,该目录对other的权限是rwx,然后再开两个客户端zjt,zhouhao
发现两个用户都可以在这个临时目录下创建文件
有一天zjt与zhouhao吵架了,然后zhouhao一气之下把zjt的文件删除了
当zjt返回去看的时候发现啥都没有了,这是个悲哀的故事,为了避免这种现象发生,我们给tam临时目录增加粘滞位
若此时zhouhao想故技重施,一定是无法操作成功的
总结:
1.超级用户root删除
2.该目录的所有者删除
3.该文件的所有者删除