【Linux网络编程】 --- Linux权限理解

 Welcome to 9ilk's Code World

       

(๑•́ ₃ •̀๑) 个人主页:        9ilk

(๑•́ ₃ •̀๑) 文章专栏:      Linux网络编程



🏠 shell命令以及运行原理

📌 引入例子理解shell

假设八里村有一个人叫张三,他的父亲是这个村的村长。张三喜欢隔壁的如花,但是张三本人不擅长交际,却想跟如花谈恋爱结婚,于是希望村里的王婆帮其说媒。在这个场景下,我们的张三相当于是用户,而如花相当于是系统内核,王婆相当于是外壳程序(kernel),张三想让王婆帮他和如花说媒相当于是用户想访问系统内核,需要通过指令让外壳程序帮我们返回内核。

Linux严格意义上说的是一个操作系统,我们称之为"核心(kernel)",但我们一般用户,不能直接使用kernel。而是通过kernel的"外壳"程序,也就是所谓的shell,来与kernel沟通。

📌 shell三问

  • Q1 : 为什么需要外壳程序?

在上面这个例子中,张三不擅长跟人交流,需要王婆帮助他解释他的需求给如花。对应的,用户不擅长也无法直接访问内核,他需要外壳程序解释他的需求。

因此广义上Linux系统 = Linux内核 + 外壳程序。

技术角度shell的最简单定义是命令行解释器,它包括:

1. 将使用者的命令翻译给核心(kernel)处理。

2. 同时将核心的处理结果翻译给使用者。

在这里shell这个命令行解释器就相当于王婆,将指令(也就是张三的要求)解释给内核(如花)。

注 :

1.对比Windows GUI,我们操作windows不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作。(比如我们进入D盘的操作通常是通过双击D盘盘符)。

2.shell对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果再通过内核运行出结果,通过shell解析给用户。

  • Q2 :shell是如何进行指令解释的?

我们故事继续,王婆知道如花不喜欢张三,但是迫于张三的父亲是村长,怕自己说媒不成功丢了招牌,因此不管说媒结果如何都要办这件事,于是王婆决定成立说媒公司,她通过招实习生来帮助她给张三说媒,这样即使说媒没成功也可以说是实习生干的,同时不会丢了她自己的招牌。

从这个故事我们可以类比理解,其实外壳程序shell是通过创建子进程,让子进程来帮忙进行命令解释,以此来保证自身的安全和稳定性。

  • Q3 : Shell和Bash是什么关系?

王婆她是个媒婆,媒婆是她们这一行的统称,而王婆是一个具体的媒婆;类比理解,其实王婆相当于是bash,而媒婆就是shell外壳。

也就是说,我们对不同平台的外壳程序统称为shell,它是包在操作系统外面的一个软件层,而Linux的外壳程序叫bash。

🏠 理解Linux权限

📌 一个认识

假设你是张三,是一个学校的校长,你能在学校活动发表讲话是因为你此时的身份是学校校长,而张三这两个字对你而言代表你是一个具体的人,校长代表的是你的角色/身份

我们需要认识到:我们在现实生

评论 56
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值