Linux文件权限

文件类型

下面是在我的Ubuntu下的/usr目录下的文件信息:

chenshu@ubuntu:/usr$ ls -alh
total 147M
drwxr-xr-x  14 root    root    4.0K Jul  5 18:36 .
drwxr-xr-x  24 root    root    4.0K Jun 30 11:08 ..
drwxr-xr-x   6 root    root    4.0K May 10 06:25 apache-maven-3.0.4
drwxr-xr-x   2 root    root     64K Jul 13 20:53 bin
drwxr-xr-x   2 root    root    4.0K May  3 10:48 games
drwxr-xr-x  38 root    root    4.0K Jul  5 18:35 include
drwxr-xr-x   8 root    root    4.0K Jun 27 16:21 jdk1.6.0_33
drwxr-xr-x   8 uucp        143 4.0K Apr 12 17:27 jdk1.7.0_04
lrwxrwxrwx   1 root    root      14 Jun 27 16:25 jdk6 -> ./jdk1.6.0_33/
-rwxr-xr-x   1 root    root     69M Jun 27 16:20 jdk-6u33-linux-x64.bin
-rwxrw-rw-   1 chenshu chenshu  78M May 11 14:26 jdk-7u4-linux-x64.gz
drwxr-xr-x 212 root    root     36K Jul 13 10:17 lib
drwxr-xr-x  10 root    root    4.0K Apr 26 00:30 local
drwxr-xr-x  10 root    root    4.0K Jul  6 07:15 nginx
drwxr-xr-x   2 root    root     12K Jun 25 11:03 sbin
drwxr-xr-x 334 root    root     12K Jul 11 20:31 share
drwxr-xr-x  13 root    root    4.0K Jul  5 18:32 src
第一位是文件类型,解释如下表:

d 目录
- 文件
l 链接
s socket
p named pipe
b block device
c character device


用户访问权限

ugoa是4段字符的组合,用来控制用户对文件的访问权限

u段是指拥有文件的用户

g段是属于该文件的group的用户们 

o段是不属于该文件的group的其他用户们

a段是all users,这些一起构成了file mode bits。

ls -alh显示的第一个字符之后的九个字符,按照三位分为一组

比如jdk-7u4-linux-x64.gz文件的九字符是:

rwxrw-rw- 拆成三组看起来是:

rwx | rw- | rw-

每个字符叫做permission field,有几种可能的值:


r 4 可读
w 2 可写
x 1 可执行
-   无权限
s   setuid

chmod支持另外一组组合:rwxXst

r read

w write

x execute (or search for directories)

X execute/search only if the file is a directory or already has execute permission for some user

s set user or group ID on  execution

t restricted deletion flag or sticky bit

chmod支持几个操作符来设置权限

+ 增加

- 删除

= 清空并增加权限

chmod u+x file                 给file的owner增加执行权限
chmod u=rwx,g=rx,o=x file      上例的另一种形式

可以用r, w, x对应的三个数值求和来赋予权限

6(4+2)代表有读写权,7(4+2+1)有读、写和执行的权限




你可能感兴趣的:(#,Linux,用户)