linux文件权限决定读写执行权限,用 ls - l 查看如 -rw-r–r–,对应所有者、组、其他人权限;数字表示法如 644= rw-r–r–,chmod 修改权限,chown/chgrp 调整归属,需按实际角色合理设置。

Linux 文件权限直接决定谁可以读、写或执行某个文件或目录,看懂它就能避免“Permission denied”错误,也能更安全地管理服务器和本地环境。
用 ls - l 命令查看详细权限信息
在终端输入ls -l,你会看到类似这样的输出:
-rw-r–r– 1 user group 1024 Jan 1 10:00 file.txt
其中最前面的 10 个字符就是权限字段:red”>-rw-r–r–。拆解来看:
- 第 1 位表示文件类型:- 是普通文件,d 是目录,l 是软链接
- 第 2–4 位(rw-)是所有者(owner)权限:可读可写,不可执行
- 第 5–7 位(r–)是所属组(group)权限:只可读
- 第 8–10 位(r–)是其他人(others)权限:只可读
理解数字权限(八进制表示法)
权限也可以用三位八进制数表示,比如644、755。每位对应一组权限:
- r = 4,w = 2,x = 1;组合相加,如 rw- = 4+2+0 = 6,r-x = 4+0+1 = 5
- 所以 644 表示:所有者(6=rw-)、组(4=r–)、其他(4=r–)
- 755 常用于可执行脚本或网站目录:所有者全权(7=rwx),组和其他可读可执行(5=r-x)
快速修改权限:chmod 命令实战
改权限不用怕,常用场景就几个:
- 给脚本添加执行权限:chmod +x script.sh
- 设为所有人只读:chmod 444 file.txt
- 让组成员也能写入目录:chmod 775 /shared(注意:目录通常需要执行权限才能进入)
- 递归 修改子目录和文件:chmod -R 600 ~/.ssh(慎用 -R,尤其对系统目录)
谁是所有者?用 chown 和 chgrp 调整归属
权限再对,归属错了也不行。常见操作:
- 改所有者:chown alice file.txt
- 同时改所有者和组:chown alice:developers file.txt
- 只改组:chgrp www-data /var/www/html
- 递归修改目录归属:chown -R www-data:www-data /var/www/html
基本上就这些。权限不是越开放越好,也不是越严格越安全——关键是匹配实际使用角色。多看 ls -l,动手试几次chmod 和chown,自然就熟了。