Red Hat Training

A Red Hat training course is available for RHEL 8

25.4. 使用符号值更改文件权限

您可以使用带有符号值(字母和符号的组合)的 chmod 工具来更改文件或目录的文件权限。

您可以分配以下 权限

  • (r)
  • (w)
  • 执行(x)

权限可分配给以下 所有权级别

  • 用户所有者 (u)
  • 组所有者(g)
  • 其他 (o)
  • 所有 (a)

要添加或删除权限,您可以使用以下 符号

  • + 在现有权限之上添加权限
  • - 从现有权限中删除权限
  • = 删除现有权限,并明确定义新权限

流程

  • 要更改文件或目录的权限,请使用:

    $ chmod <level><operation><permission> file-name

    <level> 替换为您要为其设置权限的 所有权级别。将 <operation> 替换为其中一个 符号。将 <permission> 替换为您要分配的 权限。用文件或目录的名称替换 file-name。例如,要为每个人授予读、写和执行(rwx) my-script.sh 的权限,请使用 chmod a=rwx my-script.sh 命令。

    如需了解更多详细信息,请参阅 基本文件权限

验证步骤

  • 要查看特定文件的权限,请使用:

    $ ls -l file-name

    用文件名替换 file-name

  • 要查看特定目录的权限,请使用:

    $ ls -dl directory-name

    使用目录名替换 directory-name

  • 要查看特定目录中所有文件的权限,请使用:

    $ ls -l directory-name

    使用目录名替换 directory-name

例 25.8. 更改文件和目录的权限

  • 要将 my-file.txt 的文件权限从 -rw-rw-r-- 改为 -rw------ ,请使用:

    1. 显示 my-file.txt 的当前权限:

      $ ls -l my-file.txt
      -rw-rw-r--. 1 username username 0 Feb 24 17:56 my-file.txt
    2. 从组所有者(g)和其他用户(o)删除读、写和执行(rwx)文件的权限:

      $ chmod go= my-file.txt

      请注意,任何在等号(=)之后没有被指定的权限都会被自动禁止。

    3. 验证 my-file.txt 的权限是否设置正确:

      $ ls -l my-file.txt
      -rw-------. 1 username username 0 Feb 24 17:56 my-file.txt
  • 要将 my-directory 的文件权限从 drwxrwx--- 改为 drwxrwxr-x,请使用:

    1. 显示 my-directory 的当前权限:

      $ ls -dl my-directory
      drwxrwx---. 2 username username 4096 Feb 24 18:12 my-directory
    2. 为所有用户(a) 添加读和执行(r-x)权限:

      $ chmod o+rx my-directory
    3. 验证 my-directory 及其内容的权限是否设置正确:

      $ ls -dl my-directory
      drwxrwxr-x. 2 username username 4096 Feb 24 18:12 my-directory