当前位置: 首页 > news >正文

商赢网站建设seo的中文含义是什么

商赢网站建设,seo的中文含义是什么,网站开发培训深圳,APP网站建设开发企业发展目录 Shell的运行原理 Linux权限的概念 su命令 权限 文件访问权限的相关设置方法 chmod指令 chown指令 chgrp指令 sudo命令 文件的常见问题 umask 粘滞位 关于权限的总结 Shell的运行原理 Shell运行原理 —— 外壳程序。 Linux严格意义上说的是一个操作系统&…

目录

Shell的运行原理

Linux权限的概念

su命令

权限

文件访问权限的相关设置方法

chmod指令

chown指令

chgrp指令

sudo命令

文件的常见问题

umask

粘滞位

关于权限的总结


Shell的运行原理

Shell运行原理 —— 外壳程序。

        Linux严格意义上说的是一个操作系统,我们称之为核心(kernel“ ,但我们一般用户,不能直接使用核心(kernel)。 而是通过核心(kernel)的“外壳程序,也就是所谓的shell,来与核心(kernel)沟通。
#问:如何理解?为什么不能直接使用核心(kernel)?
        可以,但是专业性太强,门槛太高,用户直接使用核心(kernel),会过于的麻烦、复杂。所以是可以的,但是是不建议的。

所以系统的设计者,不会让用户直接操作操作系统。
#问:那么我们的如何访问操作系统的呢?那么图形化界面 && 指令操作究竟是什么东西呢?
从技术角度,Shell的最简单定义,命令行解释器(command Interpreter)主要包含:
  • 将使用者的命令翻译给核心(kernel)处理。
  • 同时,将核心的处理结果翻译给使用者。
        对比:windows的图形化界面(GUI),我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。
        帮助理解:也就比如我们去银行取钱,并不是对于存储方式不清楚的我们去做,而是将银行卡与钱交给柜台,让柜台帮助我们去做,这也是一定程度上的解耦合,不需要我们多么的清楚银行内部的配置,内部的运行方式。

Shell运行原理:
  • 创建子进程,让子进程进行命令行解释。
  • 子进程出现任何问题,都不影响父进程Shell。

(用户让Shell(本身就是是一个进程 )去做的事情,可能会导致去执行的进程,出现错误,导致崩溃,所以让子进程进行命令)- 知道就可以了,父子进程学习的时候深论。

        帮助理解:操作系统是银行的机器,Shell是银行职员,用户是办理服务的我们。我们对于机器操作不清楚的我们,于是请了一个银行职员帮助我们,比如我们想取钱,就告诉银行职员,让其帮我们进行取1000元,于是银行职员就去操作机器了,这个时候,机器说该用户余额不足无法取款,于是告诉操作它的银行职员,于是银行职员告诉我们。(这个时候就是操作系统层拒绝我们)

        然后,我们又告诉银行职员我们就是要取1000,这个时候银行职员知道余额不足,就直接拒绝了。(这个时候就是Shell层拒绝我们)这个时候也就变相的保护了机器中的余额数据(Shell变相操作系统中的数据)

外壳程序shell的意义:

  1. 是用户和操作系统交互的中间软件层。
  2. 可以在一定程度,起到一定的保护操作系统的作用。

Linux权限的概念

Linux下有两种用户:超级用户(root)、普通用户

  • 超级用户:可以再linux系统下做任何事情,不受限制。
  • 普通用户:在linux下做有限的事情。

        所以:root <-切换-> 普通用户,潜台词就是切换我们当前的权限。超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

su命令

命令:su [用户名]
功能:切换用户。
例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 suroot(root可以省略),此时系统会提示输入root用户的口令。
由普通用户切换到超级用户root:su -

切换到超级用户root后切回刚刚的普通用户:Ctrl + d / logout

由普通用户切换到普通用户:su 用户名

由超级用户root切换到普通用户:su 用户名 

        root是超级用户,无需输入普通用户密码。

权限

#问:是什么?

权限针对人的, 事物的基本属性决定权限相关的概念Linux下一切皆文件—> 文件权限 ——> 一件事是否允许被用户"做"。则:权限的核心 = 人 + 事物属性。
1. 文件访问者的分类(人)
  • 文件和文件目录的所有者:u---User(中国平民 法律问题)
  • 文件和文件目录的所有者所在的组的用户:g---Group(不多说)
  • 其它用户:o---Others (外国人)
2. 文件类型和访问权限(事物属性)

用户:可以认为是一种角色或者身份:root && 普通用户(它们可以各自扮演下面的三个)

  • 拥有者:文件属于谁。
  • 所属组:文件属于哪一个组。
  • other:不属于上面两种的任何一个,就是other。

root、普通用户是具体的用户,上面是它们所扮演的角色。

#问:为什么会有所属组这个概念?

        在某个公司当中有两个小组团队(A组、B组)在同一个Linux服务器上进行着同一款项目的开发(赛马模式),而你就是A组当中的一员。

         有一天,A组的领导来找你,想看看你写的代码。如果这个时候用户只有:拥有者和other,没有所属组。这个时候想让A组领导看见代码,就需要将other的权限打开。但是这个时候,作为B组的李四,也是other,就会导致李四也有权限。所以,如果只有拥有者和other,就会导致组内的成员无法看见代码,打开other权限,也就回导致所有人都会有权限。这就是有问题的,所以Linux映入了所属组。这个时候想让同组的人看见代码,只需将和我们属于同一组人的权限打开就可以了。

文件类型:

        Linux下,不以文件后缀来区分文件类型(并不代表可以不使用,在系统层虽然没有意义,但是可以给自己看)。注意:gcc、g++等是Linux上的软件,它们是认文件后缀的!

  • d:文件夹
  • -:普通文件
  • l:软链接(类似Windows的快捷方式)
  • b:块设备文件(例如硬盘、光驱等)
  • p:管道文件
  • c:字符设备文件(例如屏幕等串口设备)
  • s:套接口文件

基本权限:

  1. 读(r/4)Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。
  2. 写(w/2)Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限。
  3. 执行(x/1)execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限。
  4. “—”:表示不具有该项权限。

3. 文件权限值的表示方法

  • 字符表示方法
Linux表示说明Linux表示说明
r - -只读- w -仅可写
- - x仅可执行r w -可读可写
- w x可写和可执行r - x可读可执行
r w x可读可写可执行- - -无权限

文件访问权限的相关设置方法

于是更改权限的操作就有两类:

  1. 改用户
  2. 改属性

chmod指令

功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名
常用选项:
        R -> 递归修改目录文件的权限
        说明:只有文件的拥有者和root才可以改变文件的权限
chmo命令权限的格式
1.  用户表示符+/-=权限字符  
  • +向权限范围增加权限代号所表示的权限。
  • -向权限范围取消权限代号所表示的权限。
  • =向权限范围赋予权限代号所表示的权限。
  • 用户符号:  
    • u拥有者
    • g拥有者同组用
    • o其它用户
    • a所有用户

举例:

 若要同时设置不同类用户的访问权限,则需用逗号隔开。

2.  八进制

        权限只有:有、没有,两个状态。这也就是位图的原理,二进制表示,为0即否,为1即是。于是便有了八进制的表现。

  • 8进制数值表示方法

 #问:如果没有权限是什么样子?

        这个时候就是,根本原因:我们虽然是这个文件的所属组,但是,我们依旧不具备任何权限,因为拥有者的权限被我们清掉了。即使是我们的文件,但是没有权限就是不行。

#问:root是超级管理员,他的权限受不受约束?

        这个时候,文件的拥有者和所属组都不是root,是不是root就是other用户了?此时是不是什么权限都没有了?但是,可以发现root用户是可以进行任何操作的。

         并且还能更改该文件的权限。

Note:

        root用户的权限十分的大!几乎是不受权限的约束的!权限就是用来限制普通用户。所以用户的密码十分重要。

chown指令

功能修改文件的拥有者
格式chown [参数] 用户名 文件名。
实例:

        可以发现直接使用这个指令,报错:这个操作是不被允许的。因为我们给别人东西是需要得到别人的同意的。

如何让对方同意?

        很简单,强迫对方同意!直接换成root进行操作。

chgrp指令

功能修改文件或目录的所属组。
格式chgrp [参数] 用户组名 文件名。
常用选项-R 递归修改文件或目录的所属组。
实例:

Note:

        这个时候就使用chown、chgrp指令,改变了用户,这个时候普通用户qcr就变为了other。

sudo命令

        除了用root超级用户压着对方强行移动文件还可以使用sudo

Note:

        如果用户想执行sudo,提升权限,需要该用户在信任列表里面,才可以执行sudo,添加用户到信任列表是需要root身份的!

        首先你得先切换到超级用户,只有超级用户才有权力将普通用户添加到信任列表。切换到超级用户后,我们使用vim打开文件sudoers进行添加。

        注意:普通用户打开文件sudoers是空白什么都看不到。
在这里插入图片描述
        添加完毕后,该用户就可以使用sudo指令,也就是拥有提升当前指令权限的能力了。
在这里插入图片描述

文件的常见问题

1. 目录权限。

Note:

        权限对于用户,如果是拥有者和所属组,只看拥有者权限,与所属组没有关系。不是拥有者是所属组,那只看所属组权限。因为权限只会认证一次。

  • 可执行权限: 如果目录没有可执行权限, 则无法cd到目录中。
  • 可读权限:如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容。
  • 可写权限:如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件。

umask

Linux默认:

  • 一个目录被创建,起始权限是:777
  • 一个普通文件被创建,起始权限是:666

        但是我们会发现,我们创建的目录、文件一个是775、664.。并不是前面所提的起始权限。

#问:为何我们创建一个目录或者文件,默认权限是你所看到的样子?

        因为有umask的存在。

功能
  • 查看或修改文件掩码。
  • 新建文件夹默认权限=0666,新建目录默认权限=0777,但实际上我们所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask
格式:umask 权限值
说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

        只需要关心umask的后三位。但第 1 个数代表的是文件所具有的特殊权限(SetUID、SetGID、Sticky BIT)此文不涉及讲解

Note:

        凡是在umask中出现的权限,都不应该在最终权限中出现。

        我们实际创建出来的文件和目录的权限值并不是开始的起始权限,是还需要进行进一步umask换算才能得出 —— 掩码的的后三位八进制换算为二进制,然后对其进行按位取反。最终权限 = 起始权限 & (~umask)。

实例

粘滞位

#问:当一个普通文件,不具备任何权限,我们是否能够删除它?

        可以发现,我们可以利用读写权限阻挡别人阅读,但是我们没有办法阻挡别人删除。因为一个文件被删除并不是一个文件本身的属性,而是,文件所在的目录中用户是否具有写权限。所以也不用担心别人将我们的文件删除,因为该文件所在的目录是属于我们的。

结论:

  1. 删除一个文件,并不是这个文件说的算,而是这个文件所处的目录说的算。
  2. 该文件也处于,自己的目录下,所以也不用担心别人删除。(前提该目录就只属于你自己)

        所以需要担心的是,未来我们与某一个人一起在一个目录下(特定路径下),共同在一个目录里维护一堆文件的时候,这个时候我们可以不给别人看的权限,但是我们架不住别人来删除。

于是在一个场景下:

大家所有的用户都在一个共同的路径下,对该目录具有读写执行权限。


有一个在根目录下的目录就是这样的:tmp

        比如:我们创建了一个拥有者和所属组都是root的目录后,在该目录中使用两个普通用户创建普通文件。

        这个时候由于test_dirw目录的拥有者和所属组即使都是root,但是放开了对于other的写权限,所以一个普通用户是可以将另一个普通用户的文件删除的。

        有个最直接的方法,就是将test_dirw目录的other的写权限关闭。

        这个时候,倒是解决了别人删我们的文件的问题,但是对于我们来说,我们也没有了删除的权限了,毕竟在这个拥有者与所属组都是root的目录下,作为普通用户的我们来说,我们就是other,other的写权限被我们关闭了。 

        因为怕别人删,反而导致了自己没法删除。

总结:

  1. 当多个用户共享一个目录,需要在该目录下,进行读写,创建删除文件。
  2. 但是自己只能删除自己的,而不能删除别人的。(w:可以互相删除)

        所以便有了新的一个属性:粘滞位

        说白了就是:既能保证用户们在一个目录下,你创建你的、我创建我的,你读写你的。又能保证其他人,无法删除你的文件,你还能正常使用。

        这个时候 是 的特殊情况,这个时候它的表现形式就是。

当一个目录被设置为"粘滞位" ( 用chmod + t ) ,则该目录下的文件只能由:

  1. 超级管理员删除。
  2. 该目录的所有者删除。
  3. 该文件的所有者删除。

Note:

        粘滞位只能给目录设置,因为一个文件能否被删除本身就是目录的权限。

#问:会不会出现别的用户将粘滞位取消后,跑过来将我们的文件删除吗?

        不可以,因为对于这种共享目录,一般都是拥有者和所属组都是root。而粘滞位只能够谁加的,谁来取。所以也不用担心别人讲目录的粘滞位取消掉,因为要不就是root的目录,要么就是我们的目录。

        (root不用想了,它在服务器的机器上无所不能,它当然可以取消你设置的粘滞位)不是完全的无所不能,比如他删不掉一个正在被访问的文件。

关于权限的总结

  • 目录的可执行权限是表示你可否在目录下执行命令。
  • 如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd 进入目, 即使目录仍然有-r 读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)。
  • 而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限。
  • 所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档。
http://www.shuangfujiaoyu.com/news/2905.html

相关文章:

  • 凯里网站开发gzklyyseo外链在线提交工具
  • 一般网站用什么软件做经典软文案例或软文案例
  • 举报网站制度建设方面seo网站优化怎么做
  • 企业官网建站步骤发布推广信息的网站
  • 西宁网站建设哪家公司好有链接的网站
  • 商业网站建设咨询中国互联网协会官网
  • 网站开发公司名字百度推广管理系统
  • 做乡镇网站广告营销案例100例
  • dede自适应网站注意事项爆款采集推广引流软件
  • 网站域名 没有续费品牌推广服务
  • aaaa景区网站建设标准app推广软件有哪些
  • 开一个网站需要什么手续黄页88网站推广效果
  • 北京网站推广北京谷歌seo公司
  • 网站怎样免费推广手机搭建网站
  • 网站制作专家谷歌商店下载官方正版
  • 长沙网站建设公司哪家好军事新闻
  • 网站首页滚动图片windows优化大师官方网站
  • 专业科技网站建设外贸网站优化推广
  • 下载网站上的表格 怎么做头条号权重查询
  • 做网站 属于电子商务个人如何加入百度推广
  • 怎样能在百度上搜索到自己的店铺seo搜索引擎优化工资薪酬
  • 国务院办公厅关于加强政府网站信息内容建设的意见 首次网站推广互联网推广
  • 做网站系统用什么语言sem推广竞价
  • 网站建站发布平台怎么建个人网站
  • 淘宝联盟怎样建设网站重庆关键词排名推广
  • 大型网站制作教程外链发布平台有哪些
  • 弹窗网站制作器互联网运营培训课程
  • 垫江网站建设百度平台app下载
  • 贩卖做网站资料seo网站建设公司
  • 武汉哪家做网站公司好北京百度竞价托管公司