游乐游手机版
首页/系统平台/文章详情

Linux系统中设置文件权限的详细步骤和注意事项

时间:2026-06-22 12:37
在 Linux 操作系统中,每个文件都具备独特的“身份标识”,主要体现在文件类型与文件权限两大方面。文件类型大家通常比较熟悉,包含普通文件、目录文件、链接文件、设备文件以及管道文件共五种。而文件权限则决定了哪些用户能对文件执行何种操作——读取、写入、执行,甚至删除。由于 Linux 属于多用户操作系

在 Linux 操作系统中,每个文件都具备独特的“身份标识”,主要体现在文件类型与文件权限两大方面。文件类型大家通常比较熟悉,包含普通文件、目录文件、链接文件、设备文件以及管道文件共五种。而文件权限则决定了哪些用户能对文件执行何种操作——读取、写入、执行,甚至删除。由于 Linux 属于多用户操作系统,多个用户可以同时登录并执行任务,因此需要将文件与目录关联到具体的用户或用户组。为了实现更精细的权限控制,ACL(访问控制列表)应运而生。ACL 的核心功能是限制包括 root 在内的所有用户对文件、资源或套接字的访问。接下来,本文将详细介绍如何在 Linux 环境下配置 ACL,操作步骤清晰明了。

步骤1 检查系统核心

第一步需要确认你的 Linux 内核是否已内置 ACL 支持。并非所有内核版本都默认编译了该功能,最简单的验证方法是运行一条命令,检查输出中是否包含相关配置项:

[root@mail /]# cat /boot/config-kernel-version | grep -i ext3
CONFIG_EXT3_FS=m
CONFIG_EXT3_IDEX=y
CONFIG_EXT3_FS_XATTR_SHARING=y
CONFIG_EXT3_FS_XATTR_USER=y
CONFIG_EXT3_FS_XATTR_TRUSTED=y
CONFIG_EXT3_FS_ACL=y

如果看到类似上述输出,尤其是最后一行 CONFIG_EXT3_FS_ACL=y,则表明内核已编译了 ACL 支持,ext3 文件系统可以直接启用。若未找到该选项,则需要重新编译内核,或在配置选项中勾选 ACL 相关项。

步骤2 挂载分区并启用 ACL

完成内核检查后,下一步是在挂载分区时显式启用 ACL。例如:

# mount -t ext3 -o acl /dev/sda1 /fs1

当然,更便捷的方式是直接将配置写入 /etc/fstab 文件,这样每次开机都会自动挂载并启用 ACL 支持。

# vi /etc/fstab

在对应分区行中添加 acl 挂载选项即可。

步骤3 设置 ACL 权限

ACL 的核心优势在于能够针对个别用户设置权限,而非仅限整组。以下通过一个完整示例演示具体操作流程。

首先创建三个测试用户:test1、test2 和 test3,并使用 root 身份为它们设置密码:

[root@mail root]# adduser test1
[root@mail root]# adduser test2
[root@mail root]# adduser test3
[root@mail root]# passwd test1
[root@mail root]# passwd test2
[root@mail root]# passwd test3

接着挂载一个 ext3 分区到 /fs1

[root@mail root]# mount -t ext3 -o acl /dev/sda1 /fs1

为了让所有用户都能在 /fs1 下创建文件,先为这个目录设置宽泛的权限:

[root@mail root]# chmod -R 777 /fs1

现在以 test1 用户登录,创建自己的文件,并收回其他用户的权限:

[test1@mail test1]# cd /fs1
[test1@mail fs1]# echo "Create by test1" > test1.txt
[test1@mail fs1]# chmod go-r test1.txt
[test1@mail fs1]# ll test1.txt
-rw------- 1 test1 test1 17 Jul 14 22:11 test1.txt

此时 test1.txt 仅允许 test1 自己读写,其他用户(包括 test2、test3)均无权限。切换至 test2 用户验证:

[test2@mail test2]# cd /fs1
[test2@mail fs1]# cat test1.txt
cat : test1.txt Permission denied

果然被拒绝访问。那么,若希望 test2 也能获得读写权限该如何实现?这正是 ACL 发挥作用的地方。回到 test1 用户,执行:

[test1@mail fs1]# setfacl -m u:test2:rw test1.txt

该命令为 test2 用户单独赋予了 rw 权限。再看文件属性:

[test1@mail fs1]# ll
-rw-rw-r--+ 1 test1 test1 10 Feb 16 13:52 test1.txt

注意末尾多了一个 + 号,这是 ACL 生效的标识。使用 getfacl 查看完整的 ACL 列表:

[test1@mail fs1]# getfacl test1.txt
# file: test1.txt
# owner: test1
# group: test1
user::rw-
user:test2:rw-
group::rw-
mask::rw-
other::r--

可以看到 user:test2:rw- 一行,test2 已被单独授权。现在再次以 test2 用户登录测试:

[test2@mail test2]# cd /fs1
[test2@mail fs1]# cat test1.txt
Create by test1
[test2@mail fs1]# echo "Modify by test2" >> test1.txt
[test2@mail fs1]# cat test1.txt
Create by test1
Modify by test2

此时 test2 不仅能读取,还能向文件中追加内容。而 test3 用户呢?

[test3@mail test3]# cd /fs1
[test3@mail fs1]# cat test1.txt
cat : test1.txt Permission denied

不出所料,除了 test1 和 test2,其他用户依然被拒绝访问(root 除外)。这正是 ACL 的灵活性所在:能够精确控制每个用户对单个文件的访问权限,而无需改变文件原有的属主或属组。

来源:https://www.jb51.net/os/Fedora/1412.html
上一篇Fedora 9系统ADSL上网配置方法 下一篇Linux Fedora终端两种复位清屏方法
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
U极速U盘装GHOST Win8系统教程
系统平台 · 2026-07-17

U极速U盘装GHOST Win8系统教程

使用U盘安装Win8系统,听起来可能有些复杂,但拆解开来其实只有几个关键步骤。如今网上安装系统的方法层出不穷,但最普及、最省心的方式依然是U盘安装法——无需光盘,无需光驱,仅需一个U盘即可轻松完成。无论是之前的XP、Win7,还是后来的Win10,身边许多朋友安装系统时都首选U盘方案。不过,网上的教

U盘怎么装Win7系统 U极速一键详细安装教程图解
系统平台 · 2026-07-17

U盘怎么装Win7系统 U极速一键详细安装教程图解

使用U盘安装Win7系统,如今已经是相当成熟且普遍的操作方式。相比以往需要光盘和光驱的繁琐流程,U盘装系统无疑更加便捷高效——只需一个存储设备,就能为任意电脑安装XP、Win7、Win8甚至Win10系统。接下来,我们直接进入正题,详细演示完整的U盘安装Win7流程,每一步都配有图解,跟着操作即可轻

KunlunPlatform.exe进程是什么?它是否安全?一文全面解答疑问
系统平台 · 2026-07-17

KunlunPlatform.exe进程是什么?它是否安全?一文全面解答疑问

在使用Windows系统时,任务管理器里偶尔会冒出一个叫KunlunPlatform exe的进程,不少用户第一反应是“这玩意儿安全吗?”其实它背后是微软亚洲研究院推出的一款拼音输入法——Engkoo(英库)。这款输入法在功能设计上明显超越了系统自带的传统拼音输入法、简洁版以及新体验输入法,实际使用

benser.exe进程是什么及作用解析
系统平台 · 2026-07-17

benser.exe进程是什么及作用解析

在日常使用电脑时,很多用户可能会在任务管理器中看到一个名为benser exe的进程,对其来源和安全性感到困惑。本文将详细解析benser exe进程,帮助您全面了解它是否安全可靠。 benser exe进程文件详解 benser exe进程是Veritas Backup Exec备份软件的重要组成

Win11系统崩溃后时间点还原功能使用指南
系统平台 · 2026-07-17

Win11系统崩溃后时间点还原功能使用指南

当Windows 11频繁出现蓝屏、无故死机,或遭遇其他难以解释的系统异常时,常见的应对方案有两种:一是使用「系统还原」功能,将系统回滚到之前的健康状态;二是直接重置电脑,恢复出厂设置。 现在,微软为Windows 11推出了一项全新的“后悔药”——「时间点还原」功能。其核心优势在于,当系统真正崩溃