如何在Linux中修改文件和目录的权限?

在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