【Linux系统】文件 / 文件夹权限:chmod

文件 / 文件夹权限:chmod

1.介绍

chmod 命令用于改变文件或目录的访问权限。

  • 改变文件权限
chmod 777 xxx.txt
  • 改变文件夹下所有文件的权限
chmod -R 777 *

-R 是递归遍历子目录,* 通配符代表要操作的文件。

777 777 777 3 3 3 位,最高位 7 7 7 是设置 文件所有者访问权限,第二位是设置 群组访问权限,最低位是设置 其他人访问权限。其中每一位的权限用数字来表示。具体有这些权限:

  • rRead,读取,权限值为 4 4 4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
  • wWrite,写入,权限值为 2 2 2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
  • xeXecute,执行,权限值为 1 1 1):对文件而言,具有执行文件的权限;对目录来说该用户具有进入目录的权限。

首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为 7 7 7 时, 7 7 7rwx 表示( 4 + 2 + 1 = 7 4+2+1=7 4+2+1=7);如果数值为 6 6 6,则用 rw- 表示( 4 + 2 + 0 = 6 4+2+0=6 4+2+0=6),- 表示不具备权限,这里表示不具备 “执行” 权限。

// 举例
rwx rw- r-- 764
rw- r-- r-- 644
rw- rw- r-- 664

在实际中更常见的是如下 10 10 10 个字母字符串的样子

drwxrwxr-x
  • 1 1 1 位,表示文件类型,如 d 表示 directory,如果是 - 就表示正常的文件。
  • 2 、 3 、 4 2、3、4 234 位,表示所有者(user)的权限。
  • 5 、 6 、 7 5、6、7 567 位,表示群组(group)的权限。
  • 8 、 9 、 10 8、9、10 8910 位,表示其他人(other)的权限。

【Linux系统】文件 / 文件夹权限:chmod_第1张图片

2.实验

mkdir test && cd test

vim xx.md

ls -al

// 表示所有者可读可写,其他任何人只拥有读取的权限
-rw-r--r-- xx.md

// 设置所有者拥有3个权限, 群组拥有可读可写的权限, 其他人拥有可读可写的权限
chmod 766 xx.md

// 设置3种身份的人都没有写的权限
chmod -w xx.md

// 只给拥有者加上可写权限
chmod u+w xx.md

// 只给群组加上可写权限
chmod g+w xx.md

// 只给其他人加上可写权限
chmod o+w xx.md

// 去掉其他人的可写权限
chmod o-w xx.md

// 给所有人去掉可写权限
chmod a-w xx.md

// 设置群组的特定权限
chmod g=rwx xx.md

// 给整个目录所有的文件添加权限(即递归)
chmod -R 777 xx.md

你可能感兴趣的:(#,Linux,&,Shell,linux,服务器,运维,chmod,权限,安全)