在linux中使用chmod更改文件权限

发布时间 2023-12-20 14:42:36作者: 哈哈hall了

在linux中使用chmod更改文件权限的方法

一、chmod基本用法

chmod 是修改文件权限的命令。可以更改文件或目录的读、写、执行权限。其基本语法如下:

chmod [options] mode file
  • options:是可选的,可以是一些额外的参数,用来指定修改权限的方式,例如 -R 表示递归地修改目录及其子目录中的文件。
  • mode:是要修改的权限模式,用八进数字模式符号模式或表示权限。数字模式是三个八进制数字,每个数字代表一个用户组的权限。符号模式使用字母和符号表示权限。
  • file:是要修改权限的文件或目录的名称。

二、八进制数字模式:

  • 数字模式使用三个八进制数字(0-7),分别代表所有者(u)、群组(g)和其他用户(o)的权限。每个数字表示一个权限组,由三个位表示(读、写、执行)。

    例如,chmod 753 file.txt 表示:

    • 所有者(owner)有读、写、执行权限(7)。
    • 群组(group)有读、执行权限(5)。
    • 其他用户(others)有写、执行权限(3)。

三、符号模式:

符号模式具体的格式如下:

chmod [a][u][g][o]+|-|=[r][w][x] file
  • 符号模式使用字母和符号表示权限,u表示用户(user),g(group),o(others),a(all)。

  • +(添加权限)、-(移除权限)和 =(设置权限)。

  • r表示可读(read),w表示可写(write),x表示可执行(execute)。

    例如,chmod u+x file.txt 表示为所有者添加执行权限。

四、一些常见的 chmod 用法:

  • 递归修改目录及其子目录中的文件:chmod -R 777 directory

    注:-r的用法:-r-p的使用

  • 使文件具有执行权限:chmod +x file.py
  • 添加执行权限:chmod a+x file.txt
  • 设置为有执行权限,其他权限消失: chmod u=x file.txt

五、其他用法:

  • 设置 SUID 位:chmod +s executable
  • 设置 SGID 位:chmod g+s directory
  • 设置 sticky bit:chmod +t directory

一般地:文件的所有者或超级用户有权限使用chmod命令。

注:用ll显示的文件详细信息

-rwxrwxr-x  1 user user   0  12月 18 10:39  text.py*
  • -rwxrwxr-x: 这是文件的权限部分,其中每个字符表示一组权限。
    • 第一个字符是文件类型和执行权限。在这里,- 表示这是一个普通文件。若是d则表示为路径(文件夹)。
    • rwx 表示文件所有者有读、写、执行权限,文件所属组有读、写、执行权限,其他用户有读和执行权限。
  • 1: 这是硬链接数量。对于普通文件,通常是1。如果有硬链接,它会显示多于1的值。
  • user: 文件所有者的用户名。
  • user: 文件所属组的组名。
  • 0: 文件的大小,以字节为单位。这里是0,可能是一个空文件。
  • 12月 18 10:39: 文件的最后修改时间。
  • text.py*: 文件的名称。星号 (*) 表示这是一个可执行文件。

文章他站发布网址(点击跳转)
博客园 简书 知乎 CSDN