在Linux中,可以通过chmod
命令修改文件和目录的权限。
权限分为三种:
- 用户权限(owner):文件的所有者,用
u
表示。 - 同组用户权限(group):与文件属于同一组的用户,用
g
表示。 - 其他用户权限(other):其他用户,用
o
表示。
权限又分为三级:
- 读权限(read):用
r
表示,数字为4
。 - 写权限(write):用
w
表示,数字为2
。 - 执行权限(execute):用
x
表示,数字为1
。
修改权限的基本语法:
chmod [option] [mode] [filename/dirname]
选项:
- -R :递归修改,用于目录
- -f :强制修改,忽略错误
模式:
- 文本表示法:u=rwx,g=rwx,o=rwx
- 数字表示法:777
- 混合表示法:u=rwx,g=5,o=1
举例:
# 给 file.txt 添加用户读写权限
chmod u=rw file.txt
# 给 file.txt 移除组用户写入权限
chmod g-w file.txt
# 给 file.txt 设置权限为rw-r--r--
chmod 644 file.txt
# 递归给 /home/user 及子目录设置权限为rwxr-x---
chmod 751 -R /home/user
# 强制设置文件权限
chmod -f 666 file.txt