0%

Linux权限详解(chmod、600、644、666、700、711、755、777)

前言

很多人都听过 600、644、777 等 linux 权限,但是记不住那么多。其实这是有规律的,把规律记住就很好理解了。

权限介绍

  • Linux 系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。
  • Linux 下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。
  • Linux 下权限的粒度有 拥有者、群组、其它组 三种。每个文件都可以针对三个粒度,设置不同的 rwx(读写执行)权限。通常情况下,一个文件只能归属于一个用户和组, 如果其它的用户想有这个文件的权限,则可以将该用户加入具备权限的群组,一个用户可以同时归属于多个组。
  • Linux 上通常使用 chmod 命令对文件的权限进行设置和更改。

十位权限表示

第一位代表文件类型,后面每三位代表一个群组,三位中每一位对应 rwx。
-(文件类型)rwx(拥有者读写执行)r--(群组读写执行)r--(其他组读写执行)

-rw------- (600)    只有拥有者有读写权限。
-rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) 只有拥有者有读、写、执行权限。
-rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) 所有用户都有文件读、写权限。
-rwxrwxrwx (777) 所有用户都有读、写、执行权限。

数字权限使用格式

r=4,w=2,x=1

如:

rwx = 4 + 2 + 1 = 7

rw = 4 + 2 = 6

rx = 4 + 1 = 5

若要同时设置 rwx (可读写运行) 权限则将该权限位 设置 为 4 + 2 + 1 = 7

若要同时设置 rw- (可读写不可运行)权限则将该权限位 设置 为 4 + 2 = 6

若要同时设置 r-x (可读可运行不可写)权限则将该权限位 设置 为 4 + 1 = 5

文件类型

d代表的是目录(directroy)
-代表的是文件(regular file)
s代表的是套字文件(socket)
p代表的管道文件(pipe)或命名管道文件(named pipe)
l代表的是符号链接文件(symbolic link)
b代表的是该文件是面向块的设备文件(block-oriented device file)
c代表的是该文件是面向字符的设备文件(charcter-oriented device file)

使用 chmod 更改权限

算出权限对应的数字,就直接使用数字设定法就好了。

chmod 644 test.js