shell运行原理、权限
- 一、shell运行原理
-
- 1、简介
- 2、shell的简单定义
- 3、外壳程序的意义
- 4、简易示例图
- 二、Linux下的两种用户
- 三、whoami命令
-
- 四、su命令
-
- 五、Linux权限管理
-
- 1、文件归属
- 2、文件权限图
- 3、文件类型
- 4、文件名后缀
- 5、文件权限
-
- 6、文件的归属
- 六、chmod指令
-
- 1、功能
- 2、格式
- 3、权限修改格式
-
- (1)用户表示符+/-=权限字符
- (2)属性符号
- (3)示例
- 七、chown指令与chgrp指令
-
- 八、umask指令
-
- 九、粘滞位
-
- 1、引入
- 2、语法
- 3、示例
- 4、目录被设置为粘滞位时,能删除该目录下文件的用户
一、shell运行原理
1、简介
Linux严格意义上说的是一个操作系统,我们称之为核心(kernel),但一般用户,不能直接使用kernel,而是通过kernel的外壳程序,即shell,来与kernel进行交互。
2、shell的简单定义
shell可以说是命令行解释器(command Interpreter),它的主要作用是将使用者的命令翻译给核心(kernel)处理。同时,将核心的处理结果翻译给使用者。
3、外壳程序的意义
- 用户和操作系统进行交互的中间软件层。
- 在一定程度上,起到保护操作系统的作用。
- 降低用户的操作成本。
4、简易示例图
二、Linux下的两种用户
- 超级用户:在Linux系统中只有一个,具有Linux下的最高权限,一般不受权限约束。命令提示符是 “ # ”。
- 普通用户:在Linux系统中可以有多个,受权限约束。命令提示符是 “ $ ”。
三、whoami命令
1、功能
显示当前用户的用户名。
四、su命令
1、功能
切换用户。
2、用法
su [用户名]
3、示例
- su :切换为root用户且当前工作目录不变。
- su - :切换为root用户且当前工作目录切换为root的家目录。
- su name:切换为用户名为name的用户。
五、Linux权限管理
1、文件归属
- 文件或目录的所有者:u — User。
- 文件或目录所有者所在的组:g—Group。
- 其它:o—Others。
2、文件权限图
3、文件类型
- 如上图ll显示的,第一列的第一个字符,即标号1所圈中的,表明文件的文件类型,分类如下。
- d :文件夹(目录)。
- – :普通文件。
- p :管道文件。
- b :块设备文件,如硬盘、光驱等。
- c :字符设备文件,如屏幕等串口设备。
- l :软链接,类似于Windows系统下的快捷方式。
- s :套接口文件。
4、文件名后缀
如上图中的标号5所圈中的,在Linux下,不以文件名的后缀区分文件类型,但也不代表不可以使用文件名后缀,即文件名后缀在系统层面上是没有意义的,只是给用户自己看的。
5、文件权限
(1)概念
如上图中的标号2所圈中的,第2-10位是文件的权限。权限组的前3位是文件所有者的权限,权限组的中间3位是文件所属用户组的权限,权限组的后3位是其他用户的权限。
(2)rwx-代表的意义
- r(4) :Read对于文件而言,具有读取文件内容的权限,对于目录来说,具有浏览该目录信息的权限,在权限组的第一位。
- w(2) :Write对于文件而言,具有修改文件内容的权限,对于目录来说,具有创建、删除和移动目录内文件的权限,在权限组的第二位。
- x(1) :execute对于文件而言,具有执行文件的权限,对于目录来说,具有进入目录的权限,在权限组的第三位。
- – :表示不具有该项权限。
6、文件的归属
如上图中的标号3所圈中的是文件的所有者,标号4所圈中的是文件的所属组,若用户不属于这两种,则它对于该文件来说是其他。
六、chmod指令
1、功能
设置文件的访问权限
2、格式
chmod [参数] 权限 文件名
3、权限修改格式
(1)用户表示符+/-=权限字符
- +. :向权限范围增加权限代号所表示的权限。
- -. :向权限范围取消权限代号所表示的权限。
- = :向权限范围赋予权限代号所表示的权限。
(2)属性符号
- u :所有者。
- g :所有者所属组。
- o :其它。
- a :所有。
(3)示例
七、chown指令与chgrp指令
1、chown指令
(1)功能
修改文件的所有者。
(2)格式
chown [参数] 用户名 文件名
2、chgrp指令
(1)功能
修改文件或目录的所属组。
(2)格式
chgrp [参数] 用户组名 文件名
3、示例
八、umask指令
1、功能
- 查看或修改文件掩码。
- 新建文件默认权限是0666,新建目录默认权限是0777。但实际上我们所创建的文件和目录的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。
- 假设默认权限是mask,则实际创建的出来的文件/目录权限是mask & ~umask的结果。
2、格式
umask 权限值
3、示例
九、粘滞位
1、引入
对于一个目录,只要用户具有该目录的写权限,用户就可以删除该目录中的文件,而不论这个用户是否有这个文件的写权限。也就是说,在一个所有人都具有写权限的目录里(前提是能进入该目录),我可以随意删除目录里面的文件。而要避免这种情况,则要使用粘滞位。
2、语法
chmod +t 目录名
3、示例
4、目录被设置为粘滞位时,能删除该目录下文件的用户
本文到这里就结束了,如有错误或者不清楚的地方欢迎评论或者私信
创作不易,如果觉得博主写得不错,请务必点赞、收藏加关注