5. 权限
这是什么:权限 = 一套规定「谁(owner / group / others)能对哪个文件读、写、执行」的规则,多用户系统的安全基石。
为什么用:上一章你能自由地建文件、删文件了,可服务器上不止你一个人,还有网站服务在跑。权限不设好,别人(或你自己手滑)就能改坏、删掉关键文件。
如何用:本章先读懂 ls -l 里那串 9 位权限,再用 chmod 数字法(r=4、w=2、x=1)改权限,顺带分清 sudo 和 root 的边界。
5.1 读懂 ls -l 的权限串
ls -l setup.sh
-rwxr--r-- 1 frog staff 1024 Oct 20 10:00 setup.sh
权限串 -rwxr--r-- 拆开读:
| 段 | 含义 | 符号含义 |
|---|---|---|
① - |
文件类型(- 文件,d 目录) | |
② rwx |
所有者(frog):读 r、写 w、执行 x | rwx |
③ r-- |
同组人:只读 | |
④ r-- |
其他人:只读 |
三基本权限:
r(read):读内容;目录 = 列出里面的文件w(write):改与删;目录 = 创建/删除里面的东西x(execute):可执行;目录 = 进入(cd)
5.2 chmod:改权限(数字法数字好记)
数字速记:r=4、w=2、x=1,相加得出每段数字:
rwx = 4+2+1 = 7
r-x = 4+1 = 5
r-- = 4 = 4
chmod 755 setup.sh # rwxr-xr-x — 常用于脚本与目录
chmod 600 my.pem # rw------- — 常用于私钥
chmod +x setup.sh # 或快捷写法:加执行权
| 常用值 | 场景 |
|---|---|
644 |
一般文件、HTML |
600 |
私有文件( SSH 私钥) |
755 |
可执行脚本、目录 |
5.3 chown:改归属
sudo chown frog:frog /srv/site # 给用户 frog 所有
sudo chown -R nginx:nginx site/ # 递归整目录(Web 常见)
5.4 sudo 与 root 的关系
- sudo = 「临时以 root 身份做法一件事」,对应输入自己的密码
- root 是上帝视角用户,可直接修改/破坏任何文件
- 生产服务器的习惯:日常普通用户 + 按需 sudo,别整天 root
sudo apt install nginx # 需要系统级权限时装软件
5.5 动手改
ls -l ~/.ssh,检查 your 私钥权限是不是 600- 写一个 a-script.sh,chmod +x 后直接
./a-script.sh运行 - 给一文件 chmod 000,再用 cat 读 → 报「Permission denied」
5.6 小结
- 权限 = who(owner/group/others)+ 三权(rwx),ls -l 的 9 位串能读眼神
- chmod 数字法:r4 w2 x1,如 755 / 600
- sudo 按需提权,root 不做日常
下一章:软件安装 🐸