Linux acl权限

linux的权限非常重要,我们之前所说的几种权限中,但是并不能只针对一个用户或者一个组进行单独设置,而ACL权限可以帮助我们实现这个功能,比如说有一个文件的所有者和所有者组都是a,这个文件的权限是660,我可以让b这个用户可以对文件进行读写的操作,而b这个用户并不属于a组的成员。那我们来看下如何使用

ACL权限的设置和查看

如果要使用acl权限,首先要确定你的文件系统支持acl权限,如果再Default mount options字段出现acl字样就意味着你的文件系统支持acl,不过在CentOS8中默认是都支持的。

[root@zutuanxue test]# tune2fs -l /dev/sda1
tune2fs 1.44.3 (10-July-2018)
Filesystem volume name:   <none>
Last mounted on:          /boot
Filesystem UUID:          be03eaec-6474-42ea-8f79-06e7198f5155
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
Filesystem flags:         signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:         clean
.
.
.

配置acl权限我们需要使用两个命令一个是setfacl用来设置acl权限,另一个是getfacl用来查看acl权限

  • setfacl命令:设置文件或文件夹的ACL权限

命令选项:
-m :设置acl
-x :删除指定的acl
-b :删除所有的acl
  • getfacl命令:用来查看文件的acl权限 现在我们来看下如何设置

[root@zutuanxue test]# ls
file  file1
[root@zutuanxue test]# ll file1
-rw-r--r-- 1 root root 0 10月 18 02:48 file1
[root@zutuanxue test]# setfacl -m u:oracle:rw file1 为指定的用户配置一个rw的权限
[root@zutuanxue test]# setfacl -m u::rwx file1      如果没有指定用户则默认是为该文件的所有者设置
[root@zutuanxue test]# ll file1
-rwxrw-r--+ 1 root root 0 10月 18 02:48 file1    所有者权限变成的rwx而且后面多了一个+号

你会发现使用ll(等同于ls -l)命令查看时会发现多了一个+号,这只是提醒我们此文件被设置了acl权限,但是具体是什么样的,我们还需要使用getfacl来查看

[root@zutuanxue test]# getfacl file1
# file: file1           文件名
# owner: root           所有者
# group: root           所有者组
user::rwx               user:后面是空的,代表的是所有者的权限
user:oracle:rw-         我们之前给额外用户设置的权限
group::r--              所有者组的权限
mask::rw-               默认的有效权限
other::r--              其他人的权限

以上是我们针对一个额外的用户设置的权限,同理可以设置针对组和其他人的acl权限

为不同用户或组设置不同权限

[root@zutuanxue test]# setfacl -m g:oracle:rw file1
[root@zutuanxue test]# setfacl -m o:rw file1
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
user:oracle:rw-
group::r--
group:oracle:rw-
mask::rw-
other::rw-

删除指定的acl

[root@zutuanxue test]# setfacl -x u:oracle file1        删除用户acl
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
group::r--
group:oracle:rw-
mask::rw-
other::rw-
[root@zutuanxue test]# setfacl -x g:oracle file1        删除组acl
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
group::r--
mask::r--
other::rw-
[root@zutuanxue test]# chmod o=r file1              删除其他人直接使用chmod就可以
[root@zutuanxue test]# ll file1
-rw-r--r-- 1 root root 0 10月 18 04:21 file1
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
group::r--
other::r--

删除所有acl

[root@zutuanxue test]# setfacl -m u:oracle:rw,g:oracle:rw,o:rwx file1
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
user:oracle:rw-
group::r--
group:oracle:rw-
mask::rw-
other::rwx
​
[root@zutuanxue test]# setfacl -b file1
[root@zutuanxue test]# getfacl file1
# file: file1
# owner: root
# group: root
user::rw-
group::r--
other::rwx

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

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

相关文章

LeetCode 2917. 返回 nums 的 K-or 值。(通过JavaScript实现)

给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 nums 中的 K-or 是一个满足以下条件的非负整数&#xff1a; 只有在 nums 中&#xff0c;至少存在 k 个元素的第 i 位值为 1 &#xff0c;那么 K-or 中的第 i 位的值才是 1 。 返回 nums 的 K-or 值。 注意 &#xff…

01hadoop概念

大数据与Hadoop 大数据指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 Hadoop是什么&#xff1f; Hadoop是一种分析和处理海量数据的…

2024年掌握人工智能的顶级课程

[AI 课程推荐] 谷歌、微软、哈佛大学, DeepLearning.AI都发布了免费的人工智能和ChatGPT的课程。 以下是 2024 年掌握人工智能的顶级课程: GOOGLE - 生成式人工智能学习路径微软- 为每个人提供生成式人工智能微软 - 人工智能初学者入门哈佛 - CS50 的 Python 人工智能简介Deep…

论文阅读--A Survey of Meta-Reinforcement Learning

论文概述 本文是一篇关于元强化学习&#xff08;Meta Reinforcement Learning&#xff09;的综述。元强化学习是将改进强化学习算法的发展看作是一个机器学习问题的方法&#xff0c;通过在给定任务分布的情况下学习一个能够适应任何新任务的策略&#xff0c;来提高强化学习算法…

mysql的安装启动

下载 2.解压后放在某个目录下&#xff1a; 3.修改系统变量 4.修改配置文件 &#xff08;创建一个ini文件放在解压后的目录下&#xff09; 内容如下 5.初始化mysql 1.用管理员模式下输入&#xff1a; mysqld --initialize --console C:\WINDOWS\system32>mysqld --initia…

今天就分享一下如何提前前端游戏的效率工作问题(自己工作经验得出来的)

比如给到一个新的功能&#xff0c;涉及的逻辑可能简单可能复杂&#xff0c;无论是哪一种&#xff0c;你都要做以下这几点我个人是觉得可以提升效率这一块的... 第一&#xff1a;你做的时候或者做的过程中如果遇到问题卡你半个小时以上的&#xff0c;那么这个你千万不要在埋头苦…

Java面试必考题之线程的生命周期,结合源码,透彻讲解!

写在开头 在前面的几篇博客里&#xff0c;我们学习了Java的多线程&#xff0c;包括线程的作用、创建方式、重要性等&#xff0c;那么今天我们就要正式踏入线程&#xff0c;去学习更加深层次的知识点了。 第一个需要学的就是线程的生命周期&#xff0c;也可以将之理解为线程的…

Springboot jpa 查询排序Sort,分页Page使用报错

一.Sort 报错信息&#xff1a; “Sort(org.springframework.data.domain.Sort.Direction, java.util.List<java.lang.String>) has private access in org.springframework.data.domain.Sort” 原因&#xff1a; 使用Sort sort new Sort(Sort.Direction.DESC, "…

orm之SQLAlchemy

SQLAlchemy 1.介绍 SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在 DB API之上&#xff0c;使用关系对象映射进行数据库操作&#xff0c;简言之便是&#xff1a;将类和对象转换成SQL&#xff0c;然后使用数据API执行SQL并获取执行结果。 pip3 install sqlalchemy组…

JVM运行时数据区——对象的实例化内存布局与访问定位

文章目录 1、对象的实例化1.1、创建对象的方式1.2、创建对象的步骤 2、对象的内存布局3、对象的访问定位3.1、对象访问的定位方式3.2、使用句柄访问3.3、使用指针访问 4、小结 平时大家经常使用new关键字来创建对象&#xff0c;那么我们创建对象的时候&#xff0c;怎么去和运行…

ABAP接口-RFC连接(ABAP TO ABAP)

目录 ABAP接口-RFC连接&#xff08;ABAP TO ABAP&#xff09;创建ABAP连接RFC函数的调用 ABAP接口-RFC连接&#xff08;ABAP TO ABAP&#xff09; 创建ABAP连接 事务代码&#xff1a;SM59 点击创建&#xff0c;填写目标名称&#xff0c;选择连接类型&#xff1a; 填写主机名…

Vue动态绑定样式

虽然经常使用动态绑定样式的方法&#xff0c;但有时候突然要用&#xff0c;一瞬间还是会有点困惑&#xff0c;决定记录一下&#xff0c;方便混乱的时候查阅。 绑定 HTML class 绑定对象 <div :class"{ active: isActive }"></div> <divclass"…

pycharm查看Tensor的完整数据

通常debug时&#xff0c;Tensor的数据呈现如下图&#xff0c;只显示开头几个值和结尾几个值&#xff0c;中间被省略&#xff1a; 解决方法&#xff1a; 右击想查看的数据&#xff0c;选择Evaluate Expression 输入如下命令&#xff0c;就会出现View as Array提示&#xff0c;…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:LoadingProgress)

用于显示加载动效的组件。 说明&#xff1a; 该组件从API Version 8开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 无 接口 LoadingProgress() 创建加载进展组件。 从API version 9开始&#xff0c;该接口支持在ArkTS卡片中使…

2024年k8s最新版本使用教程

2024年k8s最新版本使用教程 3. YAML语言入门3.1 基本语法规则3.2 支持的数据结构3.3 其他语法 4 资源管理4.1 k8s资源查询4.2 资源操作命令4.3 资源操作方式4.3.1 命令行方式4.3.2 YAML文件方式 5 Namespace5.1 查看命名空间5.2 创建命名空间5.3 删除命名空间5.4 命名空间资源限…

API接口商品竞品价格监控,品牌维权

第一步&#xff1a;确定监控目标 在开始之前&#xff0c;需要明确监控哪些竞品及其相关属性&#xff0c;如产品名称、SKU、价格、促销信息等。此外&#xff0c;设定监控频率和关键绩效指标&#xff08;KPIs&#xff09;&#xff0c;例如价格变动幅度、变动频率等&#xff0c;以…

脚本自动化 设置快捷方式并设置为管理员运行

自动化创建快捷方式并设置为始终以管理员权限运行&#xff0c;可以通过编写批处理脚本来实现。以下是一个创建.bat批处理文件快捷方式并设置为管理员运行的示例脚本&#xff1a; batch echo off set SCRIPT_PATH"C:\Scripts\myScript.bat" set SHORTCUT_PATH"%…

TenantLineHandler 在 MyBatis Plus 中处理多租户场景

TenantLineHandler 在 MyBatis Plus 中通常用于处理多租户场景。多租户是指在一个软件实例中&#xff0c;能够同时处理多个不同的租户数据&#xff0c;并且保证数据之间的隔离性。在多租户应用中&#xff0c;通常需要在 SQL 查询中加入额外的条件&#xff0c;以确保每个租户只能…

计算机组成原理之机器:输入输出系统

计算机组成原理之机器&#xff1a;输入输出系统 笔记来源&#xff1a;哈尔滨工业大学计算机组成原理&#xff08;哈工大刘宏伟&#xff09; Chater3&#xff1a;输入输出系统 3.1 输入输出系统的发展概况 早期阶段 外部设备与主机之间采用分散连接&#xff0c;即每一个设备都…

什么是微隔离技术?

微隔离产生的背景 首先来看下南北向流量以及东西向流量的含义 南北向流量 指通过网关进出数据中心的流量&#xff0c;在云计算数据中心&#xff0c;处于用户业务虚拟机&#xff08;容器&#xff09;跟外部网络之间的流量&#xff0c;一般来说防火墙等安全设备部署在数…