【Linux系列P3】Linux的权限有哪些?一文带你理清!

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

【Linux系列P3】Linux的权限有哪些?一文带你理清!

前言

  • 大家好吖,欢迎来到 YY 滴 Linux系列 ,热烈欢迎!
  • 本章主要内容面向接触过Linux的老铁,主要内容含:

【Linux系列P3】Linux的权限有哪些?一文带你理清!

欢迎订阅 YY 滴Linux专栏!更多干货持续更新!以下是传送门!

订阅专栏阅读:YY的《Linux》系列 ❀❀❀❀❀
【Linux系列-P1】 Linux环境的搭建
【Linux系列-P2】Linux的基本知识与指令
【Linux系列-P3】Linux的权限
【Linux系列-P4】Linux基本工具[yum][vim]

目录

一.Linux的用户&用户指令

1.用户

2.用户指令 

一.【su类】 

二.【 exit / ctrl d】

三.【sudo】 

二.权限

1.文件属性 

2.属性的基本要素 

3.文件权限值的表达方式 

4.权限相关指令 【文件访问权限的相关设置方法】 

a)chmod(设置文件的访问权限)

参数:【字符表示方法】

 参数:【2进制表示】

b)chown(修改文件的拥有者)

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

三. 起始权限问题

1.相关指令 umask

2.原理剖析 

四.粘滞位 【t 权限】

1.原理剖析 

一.Linux的用户&用户指令


1.用户

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

  • 超级用户:可以在linux系统下做任何事情,不受限制
  • 普通用户:在linux下做有限的事情。
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$

2.用户指令 


一.【su类】 

命令:su + [用户名]

功能:切换用户。

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

注意区分: su  -    

  •    利用【su - 】切换成超级用户的原理是【重新登陆】,而【su】只是【单纯切换 

 图示: 

【Linux系列P3】Linux的权限有哪些?一文带你理清!


二.【 exit / ctrl d】

命令:exit / ctrl d

功能:返回超级用户root(从root,su到普通用户后)


三.【sudo】 

命令:sudo + 指令 

场景:【信任白名单中的普通用户】

功能:提高普通用户的权限,【再输入普通用户的密码后】完成一些普通用户完成不了的指令

注意要点:正常我们用 【adduser指令 创建的普通用户】是无法完成sudo提权的,因为如果普通用户只需要输入自己的密码就能拥有超级用户的权限去完成指令,十分不合理;只有添加到系统的信任白名单(/etc/sudoers)即配置文件中,才能成功执行;


二.权限


1.文件属性 

引入:在根目录下,输入 ll 时,会出现图示情况,这些代表什么?

【Linux系列P3】Linux的权限有哪些?一文带你理清!

回答,上图示中,出现的是文件的属性

属性的具体细分如下

【Linux系列P3】Linux的权限有哪些?一文带你理清!


2.属性的基本要素 

  a)三种基本身份

  • 文件和文件目录的所有者:u---User(拥有者)
  • 文件和文件目录的所有者所在的组的用户:g---Group(所属组)
  • 其它用户:o---Others(其他)

 b)文件类型

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

 c)三种基本权限

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

注意要点:

  • 如果目录没有-x权限,则无法对目录执行任何命令,甚至无法 cd 进入目录, 即使目录仍然有-r 读权限(这 个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)
  • 而如果目录具有-x权限但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的 读 权限

3.文件权限值的表达方式 

a)字符表示方法

【Linux系列P3】Linux的权限有哪些?一文带你理清!

b)2进制 / 8进制 表示 

【Linux系列P3】Linux的权限有哪些?一文带你理清!


4.权限相关指令 【文件访问权限的相关设置方法】 


a)chmod(设置文件的访问权限)

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

注意:只有文件的拥有者和root才可以改变文件的权限

常用选项:

  • R -> 递归修改目录文件的权限

  • 参数:【字符表示方法

用户表示符+/-=权限字符:

  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予权限代号所表示的权限

用户表示符:  

  • u:拥有者
  • g:拥有者同组用
  • o:其它用户
  • a:所有用户

例:

# chmod u+w /home/abc.txt
# chmod o-x /home/abc.txt 

  •  参数:【2进制表示

三位8进制数字:

  • 即用8进制方式,依次排布

图示:

【Linux系列P3】Linux的权限有哪些?一文带你理清!

例:

# chmod 664 /home/abc.txt
# chmod 640 /home/abc.txt

b)chown(修改文件的拥有者

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

常用选项:

  • -R 递归修改文件或目录的所属组

例:

# chown user1 f1
# chown -R user1 filegroup1

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

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

常用选项:

  • -R 递归修改文件或目录的所属组

例:

#chgrp users /abc/f2
#chgrp -R users /abc/f2

三. 起始权限问题


1.相关指令 umask

a)umask

功能: 查看或修改文件权限掩码

格式:umask 权限值 说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户 默认掩码值为0022普通用户 默认为0002;(正常应该只有三位,分别代表rwx,这里是采用了将第一位的0当作用二进制表示的方式

常用选项:

  • 查看权限掩码:umask 
  • 设置权限掩码:umask 044 / 其他

2.原理剖析 

引入:新建文件夹默认权限=0666 新建目录默认权限=0777 但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。

原因:

  • 创建文件或目录的时候还要受到 umask 的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask;用直观感受理解就是——凡是在umask权限掩码中出现的权限(0022/0002),不会再在最终权限中出现;

YY的粗暴理解:

  • 在umask权限掩码二进制下,有一些位为1;则最终掩码二进制的位置不能再其位置上出现1,统统为0;其余照搬默认掩码;

图示:(普通用户,即umask权限掩码为0002的情况)

  • 新建文件夹的最终权限664

【Linux系列P3】Linux的权限有哪些?一文带你理清!

  •  新建目录的最终权限= 775

【Linux系列P3】Linux的权限有哪些?一文带你理清!


四.粘滞位 【t 权限】

引入:

  • 众所周知,普通用户的权限为700,即它在家目录下创建的文件,其他普通用户都无权查看;
  • 因此为了共享项目,我们有时不能把文件建立在家目录下;而是应该建立在一个共有的,系统默认自带的【共享目录tmp】 【目录文件】下
  • 重点:目录文件的w权限是支持修改和删除的!也就是任何一个普通用户都有权力删库跑路,这是非常不能接受的;

1.原理剖析 

于是乎,我们引进了【粘滞位】:

  • 给目录设置,(一般是共享目录);大家可以在共享目录下创建各自的文件,并进行自己的增删查改;只能允许文件各自的拥有者(普通用户)或者root(超级用户)有权力删除;【 t 】是一种特殊的 x 权限!

代码演示:文章来源地址https://www.toymoban.com/news/detail-468438.html

# chmod +t /home/ # 加上粘滞位

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

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

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

相关文章

  • Linux | 一文带你真正搞懂Linux中的权限问题

    首先来说说权限的基本概念: a.限制人的 b.访问的对象天然可能没有这种“属性” 首先这么说吧,权限也可以理解成【一件事情是否允许被谁“做”】,这个“谁”在Linux中分为两种用户,我么吧下面马上说到 然后要明确权限包括什么: 权限 = 人 + 事物(文件)属性(rwx)

    2024年02月02日
    浏览(38)
  • 大模型综述来了!一文带你理清全球AI巨头的大模型进化史

    夕小瑶科技说 原创 作者 | 小戏,Python 如果自己是一个大模型的小白, 第一眼看到 GPT、PaLm、LLaMA 这些单词的怪异组合会作何感想 ?假如再往深里入门, 又看到 BERT、BART、RoBERTa、ELMo 这些奇奇怪怪的词一个接一个蹦出来,不知道作为小白的自己心里会不会抓狂 ? 哪怕是一个

    2024年02月11日
    浏览(38)
  • 【人工智能】大模型综述 —— 一文带你理清全球AI巨头的大模型进化史

      目录 导读 家谱树——大模型的前世今生 数据——大模型的力量源泉

    2024年02月09日
    浏览(46)
  • 【从零开始学习Linux】一文带你了解Shell外壳及用户权限(一)

    🚩 纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:Linux入门 🔭【从零开始学习Linux】系列均属于Linux入门,主要包含Linux操作系统下的指令、操作、权限以及开发工具,使得拥有基本编写代码的能力。 🔥该文章主要了解Shell外壳(理论)及用户权限,其中用

    2024年02月06日
    浏览(68)
  • 【从零开始学习Linux】一文带你了解Shell外壳及用户权限(二)

    🚩 纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:Linux入门 🔭【从零开始学习Linux】系列均属于Linux入门,主要包含Linux操作系统下的指令、操作、权限以及开发工具,使得拥有基本编写代码的能力。 🔥该文章主要了解Shell外壳(理论)及用户权限,该系列

    2024年02月05日
    浏览(44)
  • Linux:权限篇 (彻底理清权限逻辑!)

            Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们 一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。 那么如何理解? 为什么不能直接使用kernel? 从 技术角度, Shell的最简单定义:命令

    2024年02月05日
    浏览(27)
  • 从 GPU 到 ChatGPT,一文带你理清GPU/CPU/AI/NLP/GPT之间的千丝万缕【建议收藏】

    目录 硬件 GPU 什么是 GPU? GPU 是如何工作的? GPU 和 CPU 的区别 GPU 厂商 海外头部 GPU 厂商: 国内 GPU 厂商: nvidia 的产品矩阵 AI 什么是人工智能 (Artificial Intelligence-AI)? 人工智能细分领域 机器学习(Machine Learning):研究如何通过算法和模型让计算机从数据中学习和提取规律

    2024年02月14日
    浏览(91)
  • 【宝藏系列】一文带你梳理 Linux 的五种 IO 模型

    Linux下主要的IO主要分为:阻塞IO(Blocking IO),非阻塞IO(Non-blocking IO),同步IO(Sync IO)和异步IO(Async IO)。同步:调用端会一直等待服务端响应,直到返回结果。异步:调用端发起调用之后不会立刻返回,不会等待服务端响应。服务端通过通知机制或者回调函数来通知客户端。阻塞:

    2024年02月11日
    浏览(34)
  • 【Java】一文带你快速入门Shiro权限框架

    📓推荐网站(不断完善中):个人博客 📌个人主页:个人主页 👉相关专栏:CSDN专栏 🏝立志赚钱,干活想躺,瞎分享的摸鱼工程师一枚 在我们实战开发过程中,对于权限的控制是必不可少的,一个系统中常见的有 普通会员、管理员、超级管理员 等等不同的角色出现。 我们

    2024年02月08日
    浏览(35)
  • 一文带你了解MySQL之用户和权限原理

    前言 在学习这一章节的时候,我们可以先了解一下SQL语言,SQL语言共分为四大类: 数据查询语言DQL(Data QueryLanguage): select 等 数据操纵语言DML(database manage language): insert update delete 等 数据定义语言DDL(Data Definition Language): create drop alter runcate 等 数据控制语言DCL(Dat

    2024年02月06日
    浏览(32)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包