【Linux】Shell命令运行原理和权限详解

一、剩余指令的补充

1.tar指令

  1. tar指令(重要):打包/解包,不打开它,直接看内容
  2. 语法:tar [-cxtzjvf] 文件与目录 … 参数:
    常用的为:

(1)-c :建立一个压缩文件的参数指令(create 的意思);

(2)-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩

(3)-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数

(4)-v :压缩的过程中显示文件!

(5)-x :解开一个压缩文件的参数指令!

(6)-C : 解压到指定目录

在这里插入图片描述
我们一般用-czf就够了!
-v把打包的过程显示出来:
在这里插入图片描述
3. tar的解压:只需将-czf / -cvzf 中的 c 变成 x 即可!
在这里插入图片描述
总结:
(1)zip和tar都是:打包
(2)unzip和tar都是:压缩

在这里插入图片描述
在这里插入图片描述

2.bc指令

Linux下的计算器:
如果退出要么:Ctrl+C / quit + 回车
在这里插入图片描述
通过重定向(echo)和管道(|)算一串连续的数字:
在这里插入图片描述

3.uname

1.uname:查Linux下的系统架构:
在这里插入图片描述
在这里插入图片描述

4.热键

(1)Ctrl+C :终止命令。
(2)Tab键:具有命令补齐的功能!

在这里插入图片描述
(3)按两次Ctrl+D 就直接退出关闭XShell
(4)Ctrl+R:在历史命令中进行搜索

二、Shell命令运行原理

1.Shell

Linux作为一个操作系统,称为"kernel",一般用户不能直接使用kernel,而通过"kernel"的外壳程序"Shell"和kernel进行沟通。

    所以广义上Linux发行版=Linux内核+外壳程序,狭义上Linux发行版=Linux内核。

Shell作为外壳程序,包裹在Linux内核外层,是一个应用程序,通过一系列的Linux命令对操作系统 发出相关治疗提供人际界面。它连接了用户和Linux内核,让用户更加高效、安全、低成本地使用Linux内核,这就是Shell的本质。bash是Shell的一种。

Shell命令的执行过程:

在这里插入图片描述

Shell有两个作用:

(1)传递请求指令,让操作系统执行命令

(2)保护内核

2.为什么Linux不让用户直接使用kernel

对比windows GUI,用户操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成用户操作(比如进入D盘的操作,用户通常通过双击D盘盘符而进入D盘)。
在这里插入图片描述
shell 对于Linux,有相同的作用,主要是对用户的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

三、Linux权限概念

  1. 权限与人扮演的角色有关,权限也与事物的属性有关权限==人(角色)+ 事物的属性!
  2. 在Linux下有两种用户,一是超级用户(root),二级是普通用户,超级用户与普通用户的命令提示符不一样:超级用户的命令提示符是"#“,普通用户的命令提示符是”$"。
  3. 超级用户:root 可以在Linux下做任何事情不受限制!
  4. 超级用户与普通用户之间可以相互切换(但是如果你普通用户切换到超级用户系统会让你输入一个密码,这个密码是root的密码,但是你root切换到普通用户不需要输入任何密码
    在这里插入图片描述

四、Linux权限管理

1.文件访问的用户分类

  1. 文件访问的用户分类,分为3类:

(1)拥有者:User(u)

(2)所属组:Group(g)

(3)other:Other(o)

2.文件类型和访问权限

(1)文件类型

​​​​​​​在Linux中,不以文件后缀作为区分文件类型的方式,而是以文件详细列表的第一位进行标识区分:
在这里插入图片描述
在Linux中,我们现阶段只学常用的文件类型有:

d:目录文件
-:普通文件(包括文本、各种静态库、可执行程序、源程序)

  1. 众所周知,windows是如何区分文件类型的,就是通过后缀名,但是Linux不通过后缀来区分文件类型,但是Linux并不是说不用后缀。( Linux区分文件类型是根据前面的第一列字符,现在就知道 - (普通文件)和 d (目录文件)就行了
    在这里插入图片描述
    我们对Linux中文件后缀的态度是可以使用,但并不代表Linux系统下的工具不用后缀来做区分,比如说编译器gcc就需要以后缀名来区分文件类型。
    在这里插入图片描述

在这里插入图片描述

(2)访问权限

linux对文件有3种访问权限:

r:read,对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限

w:write,对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限

x:execute,对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限

3.权限的表示方法

(1)字符表示法:

在这里插入图片描述
(1)快速掌握修改权限的做法:

在这里插入图片描述
(2)一次性加减多名角色的权限:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(3)权限的访问对用户身份只识别一次,如果匹配成功,那么就结束识别!
按 拥有者->所属组->other的顺序进行匹配!
在这里插入图片描述
(1)如何证明Linux对用户身份只识别一次?

在这里插入图片描述
对用户身份只识别一次:如果匹配成功就按成功的来,如果对拥有者匹配不成功就自动匹配所属组,如果两个都不成功,那就说明是other。
注意:“识别”和“匹配”不一样!!!(匹配成功那才叫识别了一次!)

(2)八进制表示法:

在这里插入图片描述

4.权限的设置

(1)chmod修改文件访问权限

只有文件的拥有者和root可以设置文件的访问权限:

chmod 【参数】 权限 文件名

①用户符号+/-/=权限字符:

+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

(2)chown修改文件拥有者

修改文件拥有者:

chown 【参数】 用户名 文件名

在这里插入图片描述

(3)chgrp修改文件或者目录的所属组

chgrp 【参数】 用户组名 文件名

在这里插入图片描述

chmod chown chgrp 的语法总结:
在这里插入图片描述

(4)umask查看或者修改文件掩码

新创建一个文件,访问权限按理来说,应该是777,但是却发现新创建的目录的权限是755:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
umask:是Linux中的默认权限掩码
在这里插入图片描述
在这里插入图片描述

(5)目录的权限

①可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容。
②可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件。
③可执行权限: 如果目录没有可执行权限, 则无法cd到目录中
在这里插入图片描述

(6)粘滞位

在root的根目录下,有一个tmp文件夹,这个文件夹下存放的是临时文件,用户在保存文件之前,文件都存放在tmp文件夹中,这个文件夹下存放用户的临时文件,可以看到它的权限有个t:
在这里插入图片描述
这个文件夹对拥有者和所属组的权限都是rwx,对other的权限是rwt。这个t是什么属性?和r、w、x有什么区别?

先来看下面的例子,root用户在根目录下创建了一个文件夹test,并在这个文件夹中创建了2个文件test1和test2,然后又root用户切换为yjl用户,此时发现yjl竟然可以删掉test中的文件:

在这里插入图片描述
这怎么能忍,我创建的文件,怎么能够被别人随随便便的删除掉了?test的目录对other有w和x的权限,一旦有w的权限,那么也就是说other可以对他进行创建文件和删除文件的操作,但是不希望一个用户创建的文件被别的用户删除删除掉,我们该怎么办呢?在这种场景下我们就需要粘滞位。

当一个目录被设置了粘滞位以后,即使用户对该目录有写的权限,但是也不能删除该目录中其他用户的文件。只有文件的拥有者和root用户才可以删除。这就达到了各个用户可以在目录中读,写,修改,删除文件,但是不能随意的删除其他用户的文件的目的。
在这里插入图片描述
但是最后发现他报错了,你没有访问权限。

因此,当一个目录被设置为"粘滞位"(chmod +t),则该目录下的文件只能由
(1)超级管理员删除
(2)该目录的所有者删除
(3)该文件的所有者删除


好了,今天的分享就到这里了
如果对你有帮助,记得点赞👍+关注哦!
我的主页还有其他文章,欢迎学习指点。关注我,让我们一起学习,一起成长吧!
在这里插入图片描述

  • 28
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小能软糖_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值