变更文件或目录的权限。在Linux系统家族里,文件或目录权限的控制分别以读取,写入,执行3种一般权限来区分,另有3种特殊权限可供运用,再搭配拥有者与所属群组管理权限范围。您可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果您对符号连接修改权限,其改变会作用在被连接的原始文件。

权限范围的表示法如下:

  • uUser,即文件或目录的拥有者。

  • gGroup,即文件或目录的所属群组。

  • oOther,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。

  • aAll,即全部的用户,包含拥有者,所属群组以及其他用户。

有关权限代号的部分,列表于下:

  • r:读取权限,数字代号为”4”。

  • w:写入权限,数字代号为”2”。

  • x:执行或切换权限,数字代号为”1”。

  • -:不具任何权限,数字代号为”0”。

  • s:当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者* setgid权限。

语法

  • chmod [-cfRv][--help][--version][<权限范围>+/-/=<权限设置...>][文件或目录...]

  • chmod [-cfRv][--help][--version][数字代号][文件或目录...]

  • chmod [-cfRv][--help][--reference=<参考文件或目录>][--version][文件或目录...]

选项

  • -c或--changes  效果类似-v参数,但仅回报更改的部分。

  • -f或--quiet--silent  不显示错误信息。

  • -R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。

  • -v--verbose  显示指令执行过程。

  • --help  在线帮助。

  • --reference=<参考文件或目录>  把指定文件或目录的权限全部设成和参考文件或目录的权限相同

  • --version  显示版本信息。

  • <权限范围>+<权限设置>  开启权限范围的文件或目录的该项权限设置。

  • <权限范围>-<权限设置>  关闭权限范围的文件或目录的该项权限设置。

  • <权限范围>=<权限设置>  指定权限范围的文件或目录的该项权限设置。