linux权限管理核心是明确“谁(用户/组)能对文件做什么(读/写/执行)”,通过ls -l查看权限、chmod修改权限(符号法或数字法)、chown修改归属,并结合场景合理设置。

Linux权限管理是日常运维和开发中绕不开的基础技能。掌握 chmod 和 chown 的用法,能帮你快速解决“权限不够”“无法访问”“执行失败”等高频问题。核心就两点:谁(用户/组)能对文件做什么(读/写/执行),以及这个“谁”是谁。
一、先看清楚当前权限:ls -l 是你的第一双眼睛
运行 ls -l filename,你会看到类似这样的输出:
-rw-r–r– 1 alice dev 1024 Jan 1 10:00 config.txt
前面10个字符就是权限字段:
– 表示普通文件(d=目录,l=软链接)
rw- 属主(alice)有读写权,无执行权
r– 所属组(dev)只有读权
r– 其他人也只有读权
记法小技巧:每三位一组,分别对应 user / group / others;r=4, w=2, x=1,数字相加就是八进制权限值(如 rw- = 4+2+0 = 6)。
二、修改文件权限:chmod 要分清符号法和数字法
两种常用方式,按场景选:
- 符号法(推荐初学者):直观、不易错
chmod u+x script.sh→ 给属主增加执行权限chmod g-w file.txt→ 去掉所属组的写权限chmod o=r file.log→ 设置其他人只有读权限chmod a-x *.tmp→ 去掉所有用户(all)的执行权限 - 数字法(适合批量或脚本):三位八进制数
chmod 644 config.conf→ 属主读写(6),组和其他人只读(4)chmod 755 deploy.sh→ 属主全权(7),组和其他人可读可执行(5)chmod 600 private.key→ 仅属主读写,最安全
三、修改文件归属:chown 管的是“身份”,不是“动作”
chown 改的是文件的属主和/或属组,不涉及读写执行能力本身:
-
chown bob file.txt→ 把属主改成 bob(组不变) -
chown :admins file.txt→ 只改属组为 admins(冒号前空) -
chown alice:developers app/→ 同时改属主和属组(注意冒号无空格) -
chown -R www-data:www-data /var/www/html/→ 递归修改整个目录及子内容(-R 很常用,也请慎用)
注意:普通用户只能把文件 chown 给自己,且不能改属组(除非是目标组成员);只有 root 或 sudo 用户才能任意切换属主和属组。
四、实战小案例:一个 Web 项目部署常见权限问题
假设你上传了一个 php 网站到 /var/www/mysite,但网页打不开,报错 “Permission denied” 或 “File not found”:
- 先查权限:
ls -ld /var/www/mysite→ 发现是drwx------(700),只有属主能进,Web 服务(如 www-data)被拦在外面 - 改目录权限:
chmod 755 /var/www/mysite→ 开放组和其他人的读+执行(进入目录必需) - 改文件权限:
find /var/www/mysite -type f -exec chmod 644 {} ;→ 所有普通文件设为 644 - 改执行脚本权限:
chmod 755 /var/www/mysite/bin/*.sh - 改归属:
sudo chown -R www-data:www-data /var/www/mysite→ 让 Web 服务拥有者身份一致
做完这些,90% 的静态资源权限问题就解决了。
基本上就这些。权限不是越开放越好,也不是越严格越安全——关键是匹配使用场景。多用 ls -l 看一眼,再动手改,基本不会翻车。
以上就是Linux查看与修改权限教学_Linux chmod与chown实际案例的详细内容,更多请关注php中文网其它相关文章!