【操作系统】一篇文章带你理清Linux中的权限!

这篇具有很好参考价值的文章主要介绍了【操作系统】一篇文章带你理清Linux中的权限!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🎬 乀艨ic:个人主页

⛺️说是高产但是还是过了快半个月才更新()

⭐️来看看这次的博客吧~


🌳前言

上次注意到发Linux相关的点击量比其他的多很多,那就最近多更几篇Linux相关的吧()
注:Linux的不同发行版本的指令可能有所不同,本次是按照CentOS7的标准来进行追述的。

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

🌳Linux 权限概念

在谈论什么是Linux的权限管理之前,我们肯定要明白 Linux 中权限的概念。当我们在 Linux 的控制台输入指令 whoami 的时候,能看到你当前登录的用户名,如下:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习
【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

Linux下只有两种用户:超级用户(root)、普通用户
超级用户:可以在 Linux 系统下做任何事情,不受限制
普通用户:在 Linux 下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

简单的说,当你的用户名是root时,你就是超级用户,拥有着最高的权限,如果不是就会有着相对较少的权限,当然具体的体现就要看下文的显示了。

🌲su 指令

语法:su [用户名]

功能: 切换用户。
例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的密码。

🌳Linux 权限管理

谈完 Linux 权限的概念,我们来看看 Linux 到底是怎么控制权限的。

🌲文件访问者的分类

Linux 中的所有文件将访问者分为了三类:

文件和文件目录的所有者:u—User
文件和文件目录的所有者所在的组的用户:g—Group
其它用户:o—Others

拥有者(user)所属组(group)其他(other)

🌲访问权限类型

谈完文件对访问者的划分,我们再看看文件对于权限的划分。
我们先通过观察一个文件的详细属性来进行讲述:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

我们注意到任意一个文件的详细属性最前面都有10个字母,我们再看看这10个字母代表着什么。

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

如上图。我们得知第一个表示的是文件的类型,而后9个字母以三个三个为一组,分别代表了拥有者,所属组和其他的三个权限的拥有情况,而在10个字母与一个数字之后,标注着这个文件的拥有者跟所属组的相关情况。

🍃基本权限

我们再来看看表示权限的九个字母的具体含义:

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

🌲文件访问权限表示方式

Linux 中对文件权限的描述有两种形式:

🍃用字符去描述文件权限

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

🍃用8进制数字去描述文件权限

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

🌲文件访问权限相关设置

既然我们已经了解了文件的权限,那么文件的权限是否可以进行人为更改呢?答案当然是肯定的,我们接着再去认识几个更改权限的指令。

🍃chmod 指令

功能: 设置文件的访问权限

格式:chmod [参数] 权限 文件名

常用选项:

R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限

chmod 使用格式:
① 用户表示符+/-=权限字符

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

实例:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

这里可以看到我通过 chmod 指令给dir文件的所属组跟其他都加上了写的权限。

②三位8进制数字

实例:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

这里可以看到我通过 chmod 指令给dir文件的所有权限都清空了。

🍃umask

这个时候我们去谈另一个问题,如果我新建一个普通文件跟一个目录,如下图:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

这里可以注意到,这两种类型的文件的默认初始权限是不一样的,目录文件展现出来的是 755,而一般文件是 644
但其实目录文件的默认权限是 777,而一般文件是 666 ,而展现出来的权限跟默认权限不同是因为在 Linux 中存在一个叫做权限掩码的东西—— umask

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习如上图,只要你在 Linux 的控制台输入 umask 就可以看到本机的权限掩码,这四位数字的后三位是三个八进制数字表示了对拥有者,所属组跟其他的掩码作用。

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

就造成了我们看到的最终现象。

当然umask也是可以自己设置的,如下:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

umask [三个8进制数字]
即可

🍃chown 指令

功能:修改文件的拥有者

格式:chown [参数] 用户名 文件名

实例:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

这样就把 test 文件的拥有者从 root 改为了 fmsaier。

🍃chgrp 指令

**功能:**修改文件或目录的所属组

格式:chgrp [参数] 用户组名 文件名

实例:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

这样就把 test 文件的所属组从 root 改为了 fmsaier。

🌲目录的权限

这里特意强调一下对于目录来说的 rwx 分别代表着什么。

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

可是这样有一个问题:只要我拥有你目录的 w 权限,我就可以在目录里面随意的删除不属于我的文件,甚至是我不能读写的文件。如下:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

可以看到身为普通用户的 fmsaier 因为具有目录 dir 的 w 权限,而没有 dir 内 test 的 r 权限,所以无法去读取 test 内的内容,但是居然可以将这个无法读取的文件删除。

为了解决这个问题,就引出了下一个新的概念——粘滞位

🌲粘滞位

我们直观看一下粘滞位的作用,如下:

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

可以看到同样的情况下,我们给目录 dir 加上 t 权限,其他用户就无法去删除不属于他的文件了,而这里的 t 权限就是我们说的 粘滞位

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

一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

由此便解决了我们刚刚提出的问题。

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习

🌳结尾

这就是Linux权限的所有内容了,以后还会更新更多关于Linux操作系统的相关知识,点一个关注避免错过哦~

感谢观看,喜欢的话可以给一个大大的三连哦~
期待我们的下次相遇,喜欢的请点个关注再走哦!之后会持续更新更多的内容!
个人主页:传送门

【操作系统】一篇文章带你理清Linux中的权限!,Linux操作系统,linux,运维,学习文章来源地址https://www.toymoban.com/news/detail-847919.html

到了这里,关于【操作系统】一篇文章带你理清Linux中的权限!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • b树(一篇文章带你 理解 )

    目录 一、引言 二、B树的基本定义 三、B树的性质与操作 1 查找操作 2 插入操作 3 删除操作 四、B树的应用场景 1 数据库索引 2 文件系统 3 网络路由表 五、哪些数据库系统不使用B树进行索引 1 列式数据库 2 图形数据库 3 内存数据库 4 NoSQL数据库 5 分布式数据库 六、总结 在计算

    2024年03月17日
    浏览(56)
  • 一篇文章带你入门HBase

    本文已收录至Github,推荐阅读 👉 Java随想录 微信公众号:Java随想录 目录 HBase特性 Hadoop的限制 基本概念 NameSpace Table RowKey Column TimeStamp Cell 存储结构 HBase 数据访问形式 架构体系 HBase组件 HBase读写流程 读流程 写流程 MemStore Flush 参数说明 StoreFile Compaction 参数说明 触发过程

    2024年02月08日
    浏览(62)
  • 一篇文章,带你彻底掌握接口测试!

    一、什么是接口测试? 所谓接口,是指同一个系统中模块与模块间的数据传递接口、前后端交互、跨系统跨平台跨数据库的对接。而接口测试,则是通过接口的不同情况下的输入,去对比输出,看看是否满足接口规范所规定的功能、安全以及性能方面的要求。 二、为什么要

    2024年02月10日
    浏览(53)
  • 一篇文章带你快速认识区块链(必看)

           区块链技术,这一划时代的分布式账本技术,正在全球范围内掀起一场深度的信任与协作模式变革。区块链如同一部由多方共同维护的公开而又安全的大账本,每一笔交易都被打包成一个区块,通过高级密码学手段确保传输和访问安全,并按照时间顺序串联起来,形

    2024年04月25日
    浏览(61)
  • 一篇文章带你了解什么是JDK

    JDK(Java Development Kit)是Java开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源。下面是JDK的一些重点介绍: Java编译器(javac):JDK包含了Java编译器,可以将Java源代码编译为Java字节码。通过编译器,开发人员可以将Java源代码转换为可在JVM上运行的字节码文

    2024年03月19日
    浏览(98)
  • 一篇文章带你了解什么是图灵完备

    图灵完备(Turing-complete)是一个计算机科学中的概念,它指的是一种计算模型能够模拟任何其他计算模型的能力。这意味着,只要一种计算模型是图灵完备的,那么它就能够完成任何可计算的任务。 图灵完备是指一种计算机语言或计算模型具有足够的能力来模拟图灵机的所有

    2024年02月15日
    浏览(48)
  • 一篇文章带你了解SpringBoot目录结构

    前言 SpringBoot是整合Spring技术栈的一站式框架,是简化Spring技术栈的快速开发脚手架,是一个能够快速构建生产级别的Spring应用的工具。SpringBoot是目前流行的微服务框架,倡导“约定优于配置”,简化Spring项目搭建及开发过程。springboot提供了很多核心的功能,比如自动化配置

    2024年03月25日
    浏览(71)
  • 一篇文章带你搞懂前端Cookie

    浏览器Cookie相信各位点进这篇文章的小伙伴应该不陌生了,它是前端领域中一个非常重要的内容,当然也是面试的一个考点,不知道各位小伙伴是否真正掌握了Cookie呢?当然没有掌握也是没有关系的,可以跟着小编的脚步一起来学习一下前端Cookie,没有熟练掌握的小伙伴看完这

    2024年02月04日
    浏览(46)
  • 一篇文章带你实现栈的接口

    栈(Stacks)是限定在一端插入和删除的线性表。允许插入和删除的一端称为栈顶(Top),另一端称为栈底(Bottom)。栈中的数据元素遵守后进先出(Last In First Out)的原则。因此,栈又称为后进先出(先进后出)线性表。 压栈:栈的插入操作叫做进栈、压栈、入栈,入数据在

    2024年02月13日
    浏览(51)
  • 一篇文章带你走进Java(保姆级)

    手打不易,希望对各位还在徘徊学什么语言的有帮助!!java不会让你失望!! Java是一种优秀的程序设计语言,它具有令人赏心悦目的语法和易于理解的语义。 Java还是有一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持

    2024年02月15日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包