在 CentOS(或其他 Linux 系统)中,可以使用 chmod
命令给文件或目录添加权限。以下是详细的操作方法:
在修改权限前,先查看文件/目录的当前权限:
ls -l 文件名
输出示例:
-rw-r--r-- 1 user group 0 Jan 1 10:00 文件名
-rw-r--r--
)表示权限:
r
=读,w
=写,x
=执行,-
=无权限。所有者
所属组
其他用户
。语法:
chmod [角色][操作][权限] 文件名
u
(所有者)、g
(组)、o
(其他)、a
(所有用户)。+
(添加)、-
(移除)、=
(精确设置)。r
、w
、x
。示例:
# 给所有者添加执行权限
chmod u+x 文件名
# 给组和其他用户添加读权限
chmod g+r,o+r 文件名
# 移除所有用户的写权限
chmod a-w 文件名
# 精确设置权限:所有者=读写执行,组=读执行,其他=无权限
chmod u=rwx,g=rx,o= 文件名
权限用3位八进制数表示,每位对应所有者
、组
、其他用户
的权限组合:
- r=4
,w=2
,x=1
,相加得总分(如 rwx=4+2+1=7
)。
常见权限:
- 755
:所有者=rwx,组和其他=rx(常用于可执行文件)。
- 644
:所有者=rw,组和其他=r(默认文件权限)。
- 777
:所有用户=rwx(慎用,安全性低)。
示例:
# 设置文件权限为 rw-r--r-- (644)
chmod 644 文件名
# 设置目录权限为 rwxr-xr-x (755)
chmod 755 目录名
如果需要修改目录及其子目录/文件的权限,加 -R
参数:
chmod -R 755 目录名
4
):允许以文件所有者身份执行。bash
chmod 4755 文件名
2
):目录下新建文件继承组权限。bash
chmod 2775 目录名
1
):仅允许所有者删除文件(如 /tmp
)。bash
chmod 1777 目录名
x
权限才能进入。chown
可修改文件所有者/组:
bash
chown 用户:组 文件名
如有其他需求,请补充具体场景!