Linux 权限入门:rwx 三组字符,管住谁能读、谁能改
新建的文件别人打不开,写好的脚本执行不了,八成是权限在拦路。Linux 里每个文件都带着一组权限,学会看、学会改,很多奇怪的问题一下就通了。
先看懂 ls -l 的第一列
跑 ls -l,会看到类似 -rw-r--r--、drwxr-xr-x 这样的字符串。第一位是类型:- 是普通文件,d 是目录。后面九位分成三组,每组三个字符,分别对应属主、属组、其他人。r 是读,w 是写,x 是执行,横线代表没有这项权限。比如 -rw-r--r-- 的意思是:属主可读可写,属组和其他人只读。
rwx 在目录上意思不一样
对文件来说,r 是能读内容,w 是能改内容,x 是能执行。对目录来说,r 是能列出目录里的名字,w 是能在里面新建、删除文件,x 是能进入这个目录。最常见的组合是:只有 x 没有 r,进得去但看不到清单;有 r 没有 x,清单看得到却进不去。
chmod:数字法最省事
r 记 4,w 记 2,x 记 1,三组数字拼起来就是权限。755 是属主全权、其他人读和执行,适合目录和脚本;644 是属主读写、其他人只读,适合普通文件。chmod +x 文件名可以快速给脚本加上执行权限,之后用 ./脚本名就能直接跑了。
chown:文件归谁
权限分属主、属组,是因为文件有主人。chown 用户名 文件名改属主,chown 用户名:组名 文件名连属组一起改。自己新建的文件属主是自己,别人用 sudo 建出来的文件属主是 root,普通用户改不动,先 chown 过来再说。
别图省事 chmod 777
777 是所有人全权,图一时方便,等于把门拆了。除了安全问题,有些程序还会拒绝权限太松的文件,比如 .ssh 目录要求 700、私钥要求 600,给宽了反而连不上。权限够用就行,这是最省心的习惯。
下次遇到打不开、执行不了,先 ls -l 看一眼第一列,再决定 chmod 还是 chown,问题往往就出在那九个字符上。
- 点赞
- 收藏
- 关注作者
评论(0)