Ubuntu系统644、755、777等常见权限的区别

文件权限

在 Ubuntu系统 (其它 Linux 系统也一样) 中,文件或目录的权限可以分为 3 种:

r:4 读
w:2 写
x:1  执行(运行)
-:对应数值0

数字 4 、2 和 1表示读、写、执行权限。

rwx = 4 + 2 + 1 = 7 (可读写运行)
rw = 4 + 2 = 6 (可读写不可运行)
rx = 4 +1 = 5 (可读可运行不可写)

通过4、2、1的组合,得到以下几种八进制的权限:

0 (没有权限 );
4 (读取权限);
5 ( 4+1 | 读取+执行);
6 (4+2 | 读取+写入);
7 (4+2+1 | 读取+写入+执行) 。

常用的文件权限

444: r–r–r–
600: rw——-
644:(4+2) (4) (4) rw-r--r--
666 rw-rw-rw-
700: rwx——
744 rwxr–r–
755: (4+2+1) (4+1)  (4+1) rwxr-xr-x
777: (4+2+1) (4+2+1)  (4+2+1) rwxrwxrwx

从左至右,1-3位数字代表文件所有者的权限,4-6位数字代表同组用户的权限,7-9 数字代表其他用户的权限

改变文件权限

Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令。

语法

chmod [-cfvR] [--help] [--version] mode file...

参数说明

mode : 权限设定字串,格式如下 :

[ugoa...][[+-=][rwxX]...][,...]

其中:

  • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

  • -c : 若该文件权限确实已经更改,才显示其更改动作
  • -f : 若该文件权限无法被更改也不要显示错误讯息
  • -v : 显示权限变更的详细资料
  • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)
  • –help : 显示辅助说明
  • –version : 显示版本

实例

将文件 file1.txt 设为所有人皆可读取 :

chmod ugo+r file1.txt

将文件 file1.txt 设为所有人皆可读取 :

chmod a+r file1.txt

将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :

chmod ug+w,o-w file1.txt file2.txt

为 ex1.py 文件拥有者增加可执行权限:

chmod u+x ex1.py

将目前目录下的所有文件与子目录皆设为任何人可读取 :

chmod -R a+r *

此外chmod也可以用数字来表示权限如 :

chmod 777 file

已发布

分类

来自

标签: