📜  Linux 中的 chmod 命令和示例(1)

📅  最后修改于: 2023-12-03 14:43:56.300000             🧑  作者: Mango

Linux 中的 chmod 命令和示例

简介

在 Linux 系统中,文件和目录有访问权限的限制,可以用 chmod 命令更改这些权限。在 Linux 系统中,每个文件和目录都有一个所有者和一个权限组,能够通过 chmod 命令来改变这些权限和所有者。

chmod 命令用于修改文件或目录的访问权限 (mode),该命令可以控制哪些用户有权读、写或执行文件或目录。

命令格式
chmod [选项]... 模式[,模式]... 文件名...
可用选项
  • -c: 若该文件权限确实已经更改,才显示其更改动作
  • -f: 若该文件权限无法被更改也不要显示错误信息
  • -R: 递归更改子目录中的文件权限
  • -v: 显示权限更改的详细信息
常用模式

chmod 命令使用的模式可以使用符号模式或数字模式:

符号模式

符号模式是字符表示法,包含如下操作符:

  • + 添加权限
  • - 移除权限
  • = 设定权限

符号模式由上述操作符及以下符号组成:

  • r 读权限
  • w 写权限
  • x 执行权限
  • X 只有当目标文件是目录,或者已经对该文件具有可执行权限时,才对该文件赋予可执行权限

以下是一些使用符号模式的示例:

  • chmod u+x file:给当前用户添加执行权限
  • chmod go-rwx file:移除组与其他用户的读、写、执行权限
数字模式

数字模式是组合表示法,使用数字来代替符号,其中每个数字代表一组权限。

数字模式由三个数字组成:abc,数字分别代表如下权限:

  • a 代表所有者权限
  • b 代表所属群组权限
  • c 代表其他用户的权限

每个数字由 0-7 组成,代表不同权限组合。

  • 0:没有权限
  • 1:可执行权限
  • 2:可写权限
  • 3:可写和可执行权限
  • 4:可读权限
  • 5:可读和可执行权限
  • 6:可读和可写权限
  • 7:可读、可写和可执行权限

以下是一些使用数字模式的示例:

  • chmod 755 file:设置当前用户可读、可写、可执行,他人可读、可执行的权限
  • chmod 600 file:只给当前用户读写的权限,其他用户无任何权限
示例
修改文件权限
# 给文件添加执行权限
chmod +x filename

# 移除文件的读写执行权限
chmod 000 filename

# 设置文件只有拥有者才有读写执行权限
chmod 700 filename

# 递归修改文件夹下文件的权限
chmod -R 755 foldername
修改文件所有者
# 修改文件所有者
chown user filename

# 修改文件所有者和所属组
chown user:group filename
总结

通过 chmod 命令可以在 Linux 系统下修改文件和目录的权限。使用符号模式或数字模式可以灵活地控制文件和目录的访问权限。修改文件的所有者和所属组也是常用的命令。