Linux如何使用setfacl命令创建权限文件

2016-02-19 11:32 8 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是Linux如何使用setfacl命令创建权限文件,一起来学习了解下吧!

【 tulaoshi.com - Linux教程 】

setfacl是Linux下设置文件访问控制列表的命令,可用来创建文件,能够继承目录的权限,有些功能类似于chmod命令,下面图老师小编就给大家介绍下Linux使用setfacl命令创建权限文件的方法,一起来学习下吧。

 Linux如何使用setfacl命令创建权限文件

下面以 root 用普通用户 user1 。在目录/mnt下

[root@RedHat-7 mnt]# setfacl -m u:user1:rwx share //为目录添加ower = user1 ,并赋予rwx 的权根。

[root@redhat-7 mnt]# setfacl -d -m u:user1:rwx share //为目录添加默认的acl权限,此目录下创建目录和文件都会继承此权限信息

[root@redhat-7 mnt]#

[root@redhat-7 mnt]#

[root@redhat-7 mnt]# getfacl share //查看share的facl信息

# file: share

# owner: root

# group: root

user::rwx

user:user1:rwx // 此时user1才能对share有写权限

group::r-x

mask::rwx

other::r-x

default:user::rwx //默认子目录或文件的权限信息

default:user:user1:rwx

default:group::r-x

default:mask::rwx

default:other::r-x

[root@redhat-7 mnt]# cd share/

[root@redhat-7 share]# ls

[root@redhat-7 share]# touch roota

[root@redhat-7 share]# touch rootb

[root@redhat-7 share]# mkdir rootdir1

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

[root@redhat-7 share]# mkdir rootdir2

[root@redhat-7 share]# ls

roota rootb rootdir1 rootdir2

[root@redhat-7 share]# getfacl roota

# file: roota

# owner: root

# group: root

user::rw-

user:user1:rwx #effective:rw-

group::r-x #effective:r--

mask::rw-

other::r--

[root@redhat-7 share]# getfacl rootdira

getfacl: rootdira: No such file or directory

[root@redhat-7 share]# getfacl rootdir

rootdir1/ rootdir2/

[root@redhat-7 share]# getfacl rootdir1

# file: rootdir1

# owner: root

# group: root

user::rwx

user:user1:rwx

group::r-x

mask::rwx

other::r-x

default:user::rwx

default:user:user1:rwx

default:group::r-x

default:mask::rwx

default:other::r-x

[root@redhat-7 share]#

现在用user1 进入此目录来检测权限:

[user1@redhat-7 share]$

[user1@redhat-7 share]$

[user1@redhat-7 share]$

[user1@redhat-7 share]$ ll

total 8

-rw-rw-r--+ 1 root root 0 Nov 19 22:52 roota

-rw-rw-r--+ 1 root root 0 Nov 19 22:52 rootb

drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir1

drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir2

[user1@redhat-7 share]$ touch user1a

[user1@redhat-7 share]$ touch user1dir1

[user1@redhat-7 share]$ getfacl user1a //查看新文件的权限

# file: user1a

# owner: user1

# group: user1

user::rw-

user:user1:rwx #effective:rw-

group::r-x #effective:r--

mask::rw-

other::r--

[user1@redhat-7 share]$ rm roota //尝试删除root创建的文件,成功

[user1@redhat-7 share]$ rm rootdir1 //尝试删除root创建的目录,成功

rm: cannot remove arootdir1a: Is a directory

[user1@redhat-7 share]$ rm rootdir1 -r

[user1@redhat-7 share]$ ll

total 4

-rw-rw-r--+ 1 root root 0 Nov 19 22:52 rootb

drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir2

-rw-rw-r--+ 1 user1 user1 0 Nov 19 22:57 user1a

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

-rw-rw-r--+ 1 user1 user1 0 Nov 19 22:57 user1dir1

[user1@redhat-7 share]$

所以,当有需求要做权根的继承操作时,可以使用这个方来实现。

在新的rhel7 中, 会有新的工具chacl 类似于 setfacl 。

上面就是Linux使用setfacl命令创建权限文件的方法介绍了,因为创建的文件继承了父目录的权限,所以在某些时候使用比较方便,当然setfacl命令还有其他的用法。

来源:https://www.tulaoshi.com/n/20160219/1597793.html

延伸阅读
标签: 电脑入门
Linux下whereis命令和find命令有点相似,whereis命令查找速度更快,但只能查找程序名,下面随图老师小编一起来了解下whereis命令的具体用法吧。 whereis命令只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统...
标签: 电脑入门
ISO是镜像文件,通常都可以使用相应的软件来挂载ISO,那么Linux系统中如何挂载ISO文件呢?除了使用软件挂载IOS外,还可使用mount命令挂载IOS文件,一起来学习下吧。 在 Windows 中,我们常常使用 Daemon Tools 和 Virtual CloneDrive 等虚拟光驱软件挂载光盘镜像,下面我们一起来学习在 Linux 中如何挂载 ISO 文件。 在 Linux 中挂载 ISO 文...
标签: 电脑入门
Linux命令中,chown命令可改变文件的所有者,一般作为系统的管理员才会使用这个命令,一般的用户是没有权限使用的,下面图老师小编就给大家详细介绍下chown命令的用法。 系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。 1.命令格式: 代码如下: chown [选项]。。。 [所有者]...
标签: 电脑入门
通过Linux下的history命令我们可以查看用过的命令,即历史命令,今天本文将详细介绍Linux下history的具体用法,一起来了解下吧。 一、什么是history 在bash功能中,它能记忆使用过的命令,这个功能最大的好处就是可以查询曾经做过的举动! 从而可以知道你的运行步骤,那么就可以追踪你曾下达过的命令,以作为除错的工具! 二、Histor...
标签: 电脑入门
Linux中read命令主要用于读取和输入终端或文件,也是经常会用到的命令,下面将通过实例来给大家详细介绍下Linux下read命令的用法,一起来了解下吧。 一、概述 read命令接收标准输入(键盘)的输入,或者其他文件描述符的输入。得到输入后,read命令将数据放入一个标准变量中。 二、使用举例(这里仅列出一些常用的选项) 1.基本读...

经验教程

438

收藏

54
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部