• Linux权限


    Linux权限


    Linux下有两个用户:root用户和普通用户

    对于root用户来说几乎没有权限限制。而普通用户受权限的限制。

    当我们用命令ls -l显示该目录的内容的时候。会发现前面有一堆字符。如:

    image-20220726120854709

    下面我们就解释一它们的意思:

    image-20220726121744737

    拥有者:这个文件或者目录是谁的。

    所属组:属于哪一个组。

    image-20220726083908301

    第一个字符:

    d:表示目录。-:表示普通文件。

    后面九个字符(3个为一组):r表示读权限w表示写权限x执行权限

    第一组的3个:是拥有者的权限

    第二组的3个:是所属组的权限

    第三组的3个:是其他人的权限

    • 如何改变这三个的权限呢?

    u:改变拥有者的权限

    image-20220726134128543

    g:改变所属组的权限

    image-20220726134159186

    o:改变其他人(other)的权限

    image-20220726134210179

    也可以用8进制的方法进行改变

    image-20220726135612153

    rwx:如果想让哪一位有权限就为1,不想给权限就是0。(此时的1,0为二进制的)

    最后每组用8进制表示就行。

    • 改变人的权限:

    chown:改变拥有者

    chgrp:改变所属组

    改变这些权限需要root权限。

    image-20220726141212401

    进入一个目录需要什么权限呢?r w x ?

    答案是需要x权限。

    image-20220726141841293

    但是在里面创建文件需要w的权限

    image-20220726142635027

    目录的起始权限为777,普通文件的其实权限是666。那为什么和我们显示的不一样呢?

    就是因为有umask的原因,umask中的权限都不应该在最终的权限中显示。

    我的umask是0002。

    image-20220726154031387

    更改umask

    image-20220726154307521

    此时新创建的hh文件就和原来的不一样了。

    那么,从上面的结果显示,最终的权限是起始权限减umask的结果吗?答案当然不是。

    它是位运算。最终的权限=起始权限&(~umask)

    • 粘滞位

      我们知道,不同的用户在同一个工作目录下可以删除别人创建的目录或者文件。

      但是我们自己创建的文件不想他人删除,怎么办呢?可以设置粘滞位。chmod +t 目录名

    创建一个共享目录mytmp,所以权限都放开

    image-20220726155852464

    我们有2个用户,分别位temp,和ML。

    image-20220726160048330

    从下面的图片中可以看出,在自己的工作目录下可以删除别人的文件

    image-20220726160225472

    加上粘滞位之后,就不可以删除别人的文件了。

    image-20220726160931929

    image-20220726161341769

  • 相关阅读:
    探索 Prompt 的世界:让你的 AI 更智能
    商城小程序代客下单程序开发演示
    五个DIY表情背后的故事
    RocketMQ中的消息存储结构及删除机制
    跨库查询问题
    【SQL】Spark SQL 比较上下两条数据,多个字段多个条件,赋值一个结果字段成一个array,
    如何调整yolo混淆矩阵的大小,使其更加美观
    将 Spring Boot 应用程序与 Amazon DocumentDB 集成
    SQL编程 Task05.SQL高级处理
    微信小程序开发小程序论文管理系统+后台管理系统
  • 原文地址:https://blog.csdn.net/m0_60598323/article/details/125997488