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

Linux——权限

目录

1.Shell运行原理——外壳程序

2.权限

2.1对人操作

2.2对角色和文件操作

3.常见权限问题


1.Shell运行原理——外壳程序

首先我们要明确一个概念,我们不是直接访问操作系统。为什么?

对于Windows我们是使用GUI进行操作,Shell对于Linux是指令操作。

        1.'人'不善于使用操作系统

        2.如果让人直接访问操作系统

                a.操作成本特别高        b.人会犯错,会带来不安全因素

        所以,系统设计者不会让人直接操作 操作系统。

那么我是如何访问操作系统的呢?那么 图形化界面&&指令操作究竟是什么东西?

        他们是操作系统提供的外壳程序。

外壳程序的意义:

  •  是用户和操作系统交互的软件层
  • 可以在一定程度,起到保护操作系统的作用

Shell:命令解释器

  • 将使用者的命令翻译给核心(kernel)处理
  • 同时,将核心的处理结果翻译给使用者。

——查看自己的外壳程序:

echo $BASH

2.权限

2.1对人操作

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

  • root:只有一个,具有Linux下的最高权限
  • 普通用户:可以有多个,要受权限的约束

Linux下可以同时存在多个用户,Linux是一个多用户操作系统

root< --切换-- >普通用户,潜台词就是在切换我当前的权限

用户如何进行身份互换:

  • 普通用户切换root用户

$su -        //用户重新登录,路径变

Password:root密码

或者

$su        //临时登录,路径不变

Password:root密码

 

  • root切换普通用户

$su 用户名

  • 普通用户切换另一个用户

$su 另一个用户

Password:另一个用户的密码

  •  回退上个身份

logout或者crtl+d

2.2对角色和文件操作

权限是什么?

针对人的,事物的基本属性决定权限相关的概念——>文件权限——>一件事情是否允许被你'做'

权限的核心:人+事物属性

 

 ll下显示的第一列的第一个字符,表明该文件的文件类型

d:目录

-:普通文件

p:管道文件

b:块设备

c:字符设备

l:链接文件

.....

Linux下,不以文件后缀来区分文件类型


人:

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

如何表述一个文件的权限呢?

从3个身份出发(拥有者,所属组,other),r-可读,w-可写,x-可执行

上图文件的表述就是:拥有者可读可写可执行,所属组可读可写可执行,other可读可执行的目录文件。

如何操作权限?

1.upo+-

  • 修改文件拥有者的权限

chmod u+r/w/x filename                 #添加权限

chmod u-r/w/x filename                  #删除权限

  •  修改文件所属组的权限

chmod g+r/w/x filename                 #添加权限

chmod g-r/w/x filename                  #删除权限

  • 修改other的权限 

chmod o+r/w/x filename                 #添加权限

chmod o-r/w/x filename                  #删除权限

 

  • 修改所有身份的权限 

chmod a+r/w/x filename                 #添加权限

chmod a-r/w/x filename                  #删除权限

 

2.八进制修改

3.修改文件所属用户/组

修改文件所属用户/组,需要进入root用户强制修改。或者在chown/chgrp命令前加sudo,以root的权限级别来执行。

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

  • 修改文件拥有者

root下:

chown 拥有者 filename

普通用户下:

sudo chown 拥有者 filename

  • 修改文件所属组

 root下:

chgrp 所属组 filename

普通用户下:

sudo chgrp 所属组 filename

 

3.常见权限问题

1.目录权限

进入一个目录,需要什么权限?

需要X权限

R权限:是否允许查看目录下文件

W权限:是否允许在目录下创建文件或目录

我们来验证一下:

2.umask

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

linux默认:

一个目录被创建,起始权限是从:777

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

最终权限=起始权限&(~umask)

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

3.粘滞位

是否能删除一个文件,取决于是否拥有当前目录的写权限

1.当多个用户共享一个目录,需要在该目录下,进行读写,创建删除文件

2.但是自己只能删除自己的,而不能删除别人的(w:可以互删的,但是不满足条件)

——>出现粘滞位(只能给目录设置)

 chmod +t  dir_name        #添加粘滞位

粘滞位一般是谁设置,谁才能取消(root除外)

http://www.lryc.cn/news/94862.html

相关文章:

  • [英语单词] components;
  • 【观察者模式】 ——每天一点小知识
  • el-ment ui 表格组件table实现列的动态插入功能
  • gitLab修改密码后,sourceTree如何修改密码
  • sop是什么意思
  • 【C#】Kestrel和IIS服务器下的同步与异步配置
  • GoLand导入redis的github包失败
  • Elasticsearch原理剖析
  • 数据在内存中的存储1(C语言进阶)
  • Kubernetes API Server 中启用 pprof 接口
  • Docker 私有仓库 harbor 搭建
  • 工厂方法模式
  • (CentOS 7)nvidia-smi:Failed to initialize NVML: Driver/library version mismatch
  • 呼吸灯——FPGA
  • 群辉用户接入vocechat的方法(附开通GPT机器人)
  • flutter js交互传参
  • 重磅IntelliJ IDEA 2023.2 新版本即将发布,拥抱 AI
  • JavaWeb_SpringCloud微服务_Day1-eureka, ribbon, nacos
  • 数据科学领域常用python库
  • 【Android关键字】startActivityForResult/onActivityResult/setResult方法的使用
  • PyTorch深度学习实战(5)——计算机视觉
  • 遥感目标检测(1)--R3Det
  • 使用 vue3-tel-input电话组件时,为什么通过v-model绑定的默认值无效而 通过:value绑定有效?
  • 【运维工程师学习二】OS系统管理
  • 【前端技巧】CSS常用知识碎片(九)
  • SQL 上升的温度
  • Matlab实现最优化(附上多个完整仿真源码)
  • es下载历史的tar文件
  • 顺畅下载chatglm2-6b的模型文件
  • go语言 socket: too many open files 错误分析