账户权限

目录

1. 文件的一般权限

1.1. 文件详细信息

1.2. 文件权限构成

示例:

1.3. chmod命令

1.3.1. 参数

示例:

扩展:隐藏权限(chattr  +a)

1.4. chown命令

 示例:

2. 特殊权限

2.1. 概述

2.2. SUID权限

2.3. SGID 权限

2.4. Sticky Bit权限

2.5. 设置特殊权限

3. ACL 权限

3.2. ACL权限管理命令

 示例:

3.3. 删除acl权限

4. 权限掩码umask

4.1. 新建文件权限与umask关系

4.2. 查看默认umask值

4.3. 修改默认umask


1. 文件的一般权限

1.1. 文件详细信息

1.2. 文件权限构成

1.2.1. 权限针对三类对象定义

        owner 所有者(属主),缩写u

        group 所属组,缩写g

        other 其他人,缩写o

1.2.2. 访问者三种权限

1.2.3. 组成

1.2.4. 文件与目录权限含义

注意:root账户不受文件权限的读写限制,执行权限受限制

示例:

例1:写出下列文件的字符权限

        764 : rwx rw- r--

        642: rw- r-- -w

        153: --x r-x -wx

        731: rwx -wx --x

例2:写出下列文件的数字权限

        r-x rw- r-- : 564

        rw- -w- -wx : 623

        rw- r-- r-- : 644  (默认创建的文件权限)

        rwx r-x r-x: 755(默认创建的目录权限)

1.3. chmod命令

      作用 chmod(change mode):修改文件或目录的权限

      格式:

          # 格式1

                chmod [选项] [ugoa][+-=][rwx] 文件或目录...

           # 格式2

                chmod [选项] nnn 文件或目录...`

1.3.1. 参数

        -R:递归修改指定目录下所有文件、子目录的权限

        u g o a:表示权限设置所针对的用户类别,可以是其中字母中的一个或组合,u(user)表示文件或目录的属 主(所有者)g(group)表示属组内的用户o(others)表示其他用户a(all)表示所有用户(即u+g+o)

        + 或 - 或 =:表示设置权限的操作动作,+代表添加-代表取消=表示只赋予给定的权限,并取消原有的权限

        rwx:用字符形式表示的所设置的权限,可以是其中一个字母或组合

        nnn:用数字表示的权限,例如755   644  等。

示例:

修改文件权限:灵活使用命令 u g o a,+ 或 - 或 =,  rwx以及  nnn。

修改目录权限:灵活使用命令 -R

扩展:隐藏权限(chattr  +a)

命令: [root@server ~]# chattr +a t4.txt 

        意义:含有不能删除的隐藏权限。使用该命令后将无法删除该文件。

                  日常工作中常用该方法保护文件,防止被分正常删除。

查看方法:[root@server ~]# lsattr t4.txt 

取消方法:[root@server ~]#  chattr -a t4.txt 

1.4. chown命令

        作用:修改文件或目录的所有者和属组(修改文件的归属对象)

        格式:修改文件或目录的所属者

                chown         -参数         所有者        :        所属组         文件名或目录名

                 # 参数-R递归设置

 示例:

例:将文件t1.txt所有者和属组修改为fox

                [root@server ~]# chown fox:fox  t1.txt 

例:将目录m1下所有文件的所有者和属组修改为fox

        [root@server ~]# chown -R fox:fox m1

2. 特殊权限

2.1. 概述

        在Linux系统中,用户对文件或目录的访问权限除了r、w、x三种一般权限外,还有SET UID(SU ID)SET GID(SGID)Sticky Bit(粘滞位)三种特殊权限,用于对文件或目录进行更加灵活方便的访问控制。

        SUID 权限的含义:是为了让一般用户在执行某些程序的时候, 在程序的运行期间, 暂时获得该程序文件 所属者的权限。

2.2. SUID权限

2.2.1. 使用场景

        例如:student用户要更改自己的密码

        student 在执行 passwd 修改自己的密码时, 其修改的密码, 最终是需要保存到 /etc/shadow 这个文件 中, 而这个文件的权限是 --------- ,它的拥有者是 root ,也只有 root 可以“ 强制” 存储, 其他用户连看都 不行

        可偏偏 student 去执行 passwd (/usr/bin/passwd) ,却可以更新自己的密码

        这就是因为有 s 权限的存在,当 s权限在拥有者的权限位上时, 即如 -rwsr-xr-x 这样时, 称为 SUID 。 SUID 即 Set UID , UID 指的是拥有者的的 ID, 而这个程序 (/usr/bin/passwd) 的拥有者为(root) 。

[root@server ~]# ll /usr/bin/passwd

-rwsr-xr-x. 1 root root 32648 8月 10 2021 /usr/bin/passwd

注意:

        suid仅对二进制文件有效

        在执行过程中,调用者会暂时获得该文件的所有者权限

        该权限只在程序执行的过程中有效

2.3. SGID 权限

SGID 可以用在两个方面:

        文件: 如果 SGID 设置在二进制文件上, 则不论用户是谁,在执行该程序的时候,程序的所属组将会变成 该程序文件的所属组。

        目录:如 果 SGID 是设置在 A 目录上, 则在 A 目录内所建立的文件或目录的所属组, 将会是此 A 目录的 所属组

注意:

         一般SGID 多用在特定的多人团队的项目开发上,在系统中用的很少

2.4. Sticky Bit权限

        Sticky Bit (SBit) 当前只针对目录有效, 对文件没有效果。

        其对目录的作用:

                 在 具 有 SBit 的目录下, 用户若在该目录下具有 w 及 x 权限 , 则当用户在该目录下建立文件或目录 时, 只有文件拥有者与 root 才有权力删除。

                例如:当 student 用户属于 A 目录的组成员或属于 other ,且拥有 wx 权限时, 可以对该目录内任 何人建立的目录或文件进行“ 删除/重命名/移动” 等操作。 如果将 A 目录加上了 Sticky Bit 权限, 则 student用户只能针对自己建立的文件或目录进行“ 删除/重命名/移动” 等操作。

2.5. 设置特殊权限

        为文件或目录添加三种特殊权限同样可以通过chmod命令来实施,使用“u±s”、“g±s”、“o±t”的字符权限模式 分别用于添加和移除SUID、GUID、sticky权限。

        若使用数字形式的权限模式,可采用“nnnn”格式的四位八进制数字表示,其中:后面三位是一般权限的数字 表示,前面第一位则是特殊权限的标志数字:

        0——表示不设置特殊权限

        1——表示只设置sticky

        2——表示只设置GUID权限

        3——表示只设置SGID和sticky权限

        4——表示只设置SUID权限

        5——表示只设置SUID和sticky权限

        6——表示只设置SUID和SGID

        7——表示同时设置SUID、GUID、sticky3种权限

3. ACL 权限

        作用:给指定的用户指定目录分配指定的权限。

3.2. ACL权限管理命令

3.2.1. 查看ACL权限

        格式:                getfacl         文件名

例: [root@server ~]# getfacl t1.txt  # getfacl命令

3.2.2. 设定ACL权限

格式:setfacl -参数 文件名

参数:

        -m:设定 ACL 权限

                给用户设定 ACL 权限:setfacl -m u:用户名:权限 指定文件名

                给用户组设定 ACL 权限:setfacl -m g:组名:权限 指定文件名

        -x:删除指定的 ACL 权限;

        -b:删除所有的 ACL 权限;

        -d:设定默认 ACL 权限。只对目录生效,指目录中新建立的文件拥有此默认权限;

        -k:删除默认 ACL 权限;

        -R:递归设定 ACL 权限。指设定的 ACL 权限会对目录下的所有子文件生效

 示例:

        例:root用户在根目录下创建目录/project及所属工作组QQgroup,所属组里面创建两个用户zhangsan和 lisi,此文件权限是770,再创建一个旁听用户 pt,给他设定/project目录的 ACL 为 r-x。

[root@server ~]# mkdir /project

[root@server ~]# useradd zhangsan

[root@server ~]# useradd lisi

[root@server ~]# groupadd QQgroup

[root@server ~]# gpasswd -M zhangsan,lisi  QQgroup 

[root@server ~]# chown root:QQgroup /project/

[root@server ~]# useradd pt
[root@server ~]# setfacl -m u:pt:r-x /project/

[root@server ~]# ll -d /project/
drwxr-xr-x+ 2 root QQgroup 6 10月  9 14:41 /project/
[root@server ~]# getfacl /project/

此时,当我们在pt用户下时不具有写的权限。

3.3. 删除acl权限

# 删除指定用户的 ACL 权限

        setfacl         -x         u:用户名         文件名

# 删除指定用户组的 ACL 权限

        setfacl         -x         g:组名         文件名

# 删除文件的所有 ACL 权限

        setfacl         -b         文件名

4. 权限掩码umask

4.1. 新建文件权限与umask关系

        在Linux系统中,当用户创建一个新的文件或目录时,系统都会为新建的文件或目录分配默认的权限,该默 认权限与umask值有关

        新建文件的默认权限=0666-umask值 (减去)

        新建目录的默认权限=0777-umask值

4.2. 查看默认umask值

        0666-umask值 (0022)=644

        0777-umask值=755

4.3. 修改默认umask

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/152577.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

科技云报道:联络中心效能与体验齐飞,容联云AICC是如何做到的?

科技云报道原创。 AI与大模型为千行万业带来的进化与改造,远比想象来得更加猛烈。作为数字化升级改造的核心场景之一,联络中心在AI与大模型加持下,正在从基础云通讯迈入智能化的3.0时代。 身处行业智能化浪潮之中,容联云AICC作为…

简易版Pycharm(2023)+Conda开发环境配置教程

困 扰 不知道为什么,自从Pycharm更新了新的版本以后,在Pycharm中为项目工程配置Python解释器环境时,总是不能像以前那么方便。 比如,当前Conda中有十个不同的开发环境,每个环境一个名称,比如,p…

LLMs 蒸馏, 量化精度, 剪枝 模型优化以用于部署 Model optimizations for deployment

现在,您已经了解了如何调整和对齐大型语言模型以适应您的任务,让我们讨论一下将模型集成到应用程序中需要考虑的事项。 在这个阶段有许多重要的问题需要问。第一组问题与您的LLM在部署中的功能有关。您需要模型生成完成的速度有多快?您有多…

数据结构———— 堆

(一)基础补充 满二叉树是每一层节点都放满的二叉树。 完全二叉树是只有最后一层节点右边不放满的二叉树。 满二叉树(Perfect Binary Tree) 如果二叉树中除了叶子结点,每个结点的度都为 2,则此二叉树称为满二叉树。另一种说法:一个深度为k(>=-1)且有2^(k+1) - 1个结…

一种重要的天然氨基酸L-Homopropargylglycine(HPG)|CAS:942518-19-6

产品简介:L-Homopropargylglycine是一种重要的天然氨基酸,具有多种生物活性和医学应用价值。它广泛应用于生物学、药学、化学等多个领域。在生物学中,HPG被用作蛋白质合成的标记物,可以通过其特殊的化学反应与蛋白质中的半胱氨酸残…

Rocky(centos)安装nginx并设置开机自启

一、安装nginx 1、安装依赖 yum install -y gcc-c pcre pcre-devel zlib zlib-devel openssl openssl-devel 2、去官网下载最新的稳定版nginx nginx: downloadhttp://nginx.org/en/download.html 3、将下载后的nginx上传至/usr/local下 或者执行 #2023-10-8更新 cd /usr/…

图像分割-Segment Anything实践

一、模型介绍 Segment Anything 模型是一种新的图像分割模型,它可以在不需要大量标注数据的情况下,对图像中的任何物体进行分割。这种方法可以帮助计算机视觉领域的研究人员和开发人员更轻松地训练模型,从而提高计算机视觉应用程序的性能。该…

线段树基本原理和操作

线段树的一些基本操作和原理: 由二分的思想而来,一段区间划分,实现大量数据的查询删除O(log(n)) 线段树(英语:Segment tree)是一种二叉树形数据结构,1977年由Jon Louis Bentley发明&#xff0…

【网络安全---XSS漏洞(1)】XSS漏洞原理,产生原因,以及XSS漏洞的分类。附带案例和payload让你快速学习XSS漏洞

以pikachu靶场为例子进行讲解,pikachu靶场的搭建请参考以下博客; 【网路安全 --- pikachu靶场安装】超详细的pikachu靶场安装教程(提供靶场代码及工具)_网络安全_Aini的博客-CSDN博客【网路安全 --- pikachu靶场安装】超详细的pi…

设计模式——Decorator(装饰器模式)

Decorator(装饰器模式) 目的: 动态地给一个对象添加一些额外的职责。 适用性: 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。 简单解释 当有一个已经完成的系统,其中类和对象的关系的错综复杂的&#x…

【【萌新的SOC学习之小水文系列】】

萌新的SOC学习之小水文系列 SD卡读写TXT文本实验 SD 卡共有 9 个引脚线,可工作在 SDIO 模式或者 SPI 模式。在 SDIO 模式下,共用到 CLK、CMD、DAT[3:0]六根信号线;在 SPI 模式下,共用到 CS(SDIO_DAT[3])、…

leetcode:2427. 公因子的数目(python3解法)

难度:简单 给你两个正整数 a 和 b ,返回 a 和 b 的 公 因子的数目。 如果 x 可以同时整除 a 和 b ,则认为 x 是 a 和 b 的一个 公因子 。 示例 1: 输入:a 12, b 6 输出:4 解释:12 和 6 的公因…

016 Spring Boot + Vue 图书管理系统

Spring Boot Vue 图书馆管理系统(library-system) 本地快捷预览项目 第一步:运行 db 文件夹下的springboot-vue.sql(询问作者获取),创建springboot-vue数据库 第二步:修改后端数据库配置文件,启动后端 …

OpenCV防抖实践及代码解析笔记

视频防抖是指用于减少摄像机运动对最终视频的影响的一系列方法。摄像机的运动可以是平移(比如沿着x、y、z方向上的运动)或旋转(偏航、俯仰、翻滚)。 正如你在上面的图片中看到的,在欧几里得运动模型中,图像…

opencv图像的直方图,二维直方图,直方图均衡化

文章目录 opencv图像的直方图,二维直方图,直方图均衡化一、图像的直方图1、什么是图像的直方图:2、直方图的作用:3、如何绘制图像的直方图:(1)cv::calcHist()函数原型:英文单词 calc…

【C/C++】结构体内存分配问题

规则1:以多少个字节为单位开辟内存 就是说,该结构体最终所占字节大小,是这个单位的整数倍 给结构体变量分配内存的时候,会去结构体变量中找基本类型的成员 哪个基本类型的成员占字节数多,就以它大大小为单位开辟内存 …

【刷题】只出现一次的数字(三种解法)

【刷题】只出现一次的数字 文章目录 【刷题】只出现一次的数字解法异或运算解法一 : 异或运算解法二:集合类Set集合Map集合 链接: https://www.nowcoder.com/share/jump/2008263481696810321082 https://leetcode.cn/problems/single-number/description/ 题目描述 给定一个整…

[PyTorch][chapter 57][WGAN-GP 代码实现]

前言: 下图为WGAN 的效果图: 绿色为真实数据的分布: 8个高斯分布 红色: 为随机产生的数据分布,跟真实分布基本一致 WGAN-GP: 1 判别器D: 最后一层去掉sigmoid 2 生成器G 和判别器D: loss不取log 3 损失函数…

讲讲项目里的仪表盘编辑器(四)分页卡和布局容器组件

讲讲两个经典布局组件的实现 ① 布局容器组件 配置面板是给用户配置布局容器背景颜色等属性。这里我们不需要关注 定义文件 规定了组件类的类型、标签、图标、默认布局属性、主文件等等。 // index.js import Container from ./container.vue; class ContainerControl extends…

java:代理模式

概念代理模式 概念: 真实对象:被代理的对象,背景的联想总部代理对象:也就是那个西安联想代理商代理模式:代理对象代理真实对象,达到增强真实对象功能的目的 实现方式: 静态代理:有一…