linux之acl管理文件权限

简介:

本文系统Centos6.0

本人不得不承认之前真不知道这个命令,也是昨天听了一个讲师的课提到此命令,(了解的大神跳过吧,别吐槽我)在此和大家分享下:

getfacl

setfacl

此命令是干嘛用的呢?相信很多人查看文件、目录的所给予的权限的时候大多都是

ls -l filename 

这里本人先演示下getfacl

1
2
3
4
5
6
7
8
[root@centos ~]# getfacl install.log
# file: install.log
# owner: root
# group: root
user::rw-
group::r--
other::r--
[root@centos ~]# cp install.log /

上面的结果不用我解释了吧;

演示setfacl  (我本地已经创建个zhangsan、lisi两个用户)

1、相信zhangsan是不能修改install.log文件的,那我怎么让他可以修改呢?

1
2
3
4
5
6
7
8
9
10
11
[root@centos /]# setfacl -m u:zhangsan:rw /install.log
[root@centos /]# getfacl /install.log
getfacl: Removing leading  '/'  from absolute path names
# file: install.log
# owner: root
# group: root
user::rw-
user:zhangsan:rw-
group::r--
mask::rw-
other::r--

这里解释下:

-m (modify)  #修改文件权限

u:zhangsan:rw   #用户zhangsan可以读写

测试:现在切换张三,可以随便/install.log这个文件

1
2
[root@centos /]# su - zhangsan
[zhangsan@centos ~]$ vim /install.log

可以随便修改了

2、我想让一个其他组的人可以rwx某脚本怎么办呢?

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@centos /]# usermod -a -G zhangsan lisi
[root@centos /]# setfacl -m g:zhangsan:rwx /install.log
[root@centos /]# getfacl /install.log
getfacl: Removing leading  '/'  from absolute path names
# file: install.log
# owner: root
# group: root
user::rw-
user:zhangsan:rw-
group::r--
group:zhangsan:rwx
mask::rwx
other::r--

现在 zhangsan组里的用户zhangsan、lisi可以随便操作该文件了;

3、撤销权限,比如用户zhangsan

1
[root@centos /]# setfacl -x u:zhangsan /install.log

这样就撤销了zhansan的权限,但是注意现在他还是可以rw的,因为我已经将组也赋予权限了

你可以将zhangsan移除组;或许你想取消该组的权限的话,操作下面命令即可

1
[root@centos /]# setfacl -x g:zhangsan /install.log

4、比如你想取消所有的权限,不想一个个取消的话,可以操作下面命令

1
2
3
4
5
6
7
8
9
[root@centos /]# setfacl -b /install.log
[root@centos /]# getfacl /install.log
getfacl: Removing leading  '/'  from absolute path names
# file: install.log
# owner: root
# group: root
user::rw-
group::r--
other::r--

-b, --remove-all   (-b 表示 --remove-all)

5、如果你想给目录赋予权限呢?

1
2
[root@centos /]# mkdir /test
[root@centos /]# setfacl -R -m u:zhangsan:rwx /test/

-R (recursive) 递归赋予权限

现在zhangsan用户可以随便在/test目录操作:

注意:关于目录赋予权限必须要x权限

关于给组赋值是一样的

1
[root@centos /]# setfacl -R -m g:zhangsan:rwx /test/



本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1275901


相关文章
|
2月前
|
安全 Linux 数据安全/隐私保护
探索Linux操作系统的文件权限管理
【9月更文挑战第29天】在数字世界中,文件权限管理如同保护我们隐私的锁。本文将带你了解如何在Linux系统中设置和管理文件权限,确保你的数据安全。我们将一起学习如何通过命令行工具来控制文件访问,就像学习一门新语言一样有趣。准备好了吗?让我们一起开启这场技术之旅!
|
18天前
|
Linux
linux/mac 下查看、修改文件权限的命令
这篇文章介绍了在Linux和Mac操作系统下如何查看和修改文件及文件夹的权限。
20 0
|
3月前
|
Linux 开发工具
在Linux中,文件权限有哪些?有什么作用?
在Linux中,文件权限有哪些?有什么作用?
|
4月前
|
Linux
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
系统启动以后一直存在且常驻内存没有界面的进程就是服务。Linux系统中的所有服务都保存在下列目录中:/usr/lib/systemd/system,进入该目录就能看到所有的服务。
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
|
3月前
|
Linux 数据安全/隐私保护
在Linux中,什么是文件权限?什么是rwx权限模型?
在Linux中,什么是文件权限?什么是rwx权限模型?
|
3月前
|
Linux 数据安全/隐私保护
Linux文件权限
Linux文件权限
|
3月前
|
安全 Linux
在Linux中,文件权限有哪些?
在Linux中,文件权限有哪些?
|
3月前
|
安全 Linux 数据安全/隐私保护
在Linux中,什么是文件权限?它们是如何工作的?
在Linux中,什么是文件权限?它们是如何工作的?
|
4月前
|
Linux
Linux 中RPM软件包管理
Linux 中RPM软件包管理
|
4月前
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
185 1