插件窝 干货文章 linux chmod符号模式如何用

linux chmod符号模式如何用

权限 设置 chmod 模式 215    来源:    2025-05-13

Linux chmod 符号模式详解

chmod 的符号模式(Symbolic Mode)是一种直观的方式来修改文件或目录的权限。与数字模式(八进制模式)不同,符号模式允许你通过添加或删除特定权限来修改文件权限,而不需要指定完整的权限集。

基本语法

chmod [who][operator][permissions] 文件名

组成部分

1. who(用户类别):

  • u - 文件所有者(user)
  • g - 文件所属组(group)
  • o - 其他用户(others)
  • a - 所有用户(all,相当于 ugo)

2. operator(操作符):

  • + - 添加权限
  • - - 移除权限
  • = - 设置精确权限(覆盖原有权限)

3. permissions(权限):

  • r - 读权限
  • w - 写权限
  • x - 执行权限
  • X - 特殊执行权限(仅当文件是目录或已有执行权限时设置执行权限)
  • s - 设置用户或组ID
  • t - 粘滞位(sticky bit)

常用示例

  1. 给所有者添加执行权限:

    chmod u+x filename
    
  2. 给组和其他用户移除写权限:

    chmod go-w filename
    
  3. 给所有用户设置读和写权限:

    chmod a=rw filename
    
  4. 给所有者设置读写执行权限,组设置读执行权限,其他用户无权限:

    chmod u=rwx,g=rx,o= filename
    
  5. 给目录设置粘滞位(只有所有者可以删除/重命名文件):

    chmod +t directory
    
  6. 递归修改目录及其内容权限:

    chmod -R g+w directory
    

组合使用

可以组合多个权限修改操作,用逗号分隔:

chmod u+x,g-w,o=rx filename

特殊权限

  • u+s - 设置SUID(Set User ID)
  • g+s - 设置SGID(Set Group ID)
  • o+t - 设置粘滞位

例如:

chmod u+s executable_file
chmod g+s shared_directory

符号模式比数字模式更灵活,特别适合在现有权限基础上进行小调整,而不需要知道或指定完整的权限集。