文件及目录的权限

1.[root@rusky ~]# id   #显示当前用户的主组和备用组

uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)

[root@rusky ~]# groups  #显示当前用户组信息

root bin daemon sys adm disk wheel

[root@rusky ~]# ls -l

total 104

-rw-r--r-- 1 root root     0 May  2 08:14 123

-rw-r--r-- 1 root root   139 Apr  5 22:20 2006    #-表示该文件为普通文件

drwxr-xr-x 2 root root  4096 Apr 22 02:33 Desktop   #第一个字符d表示该文件是目录

-rw-r--r-- 1 root root 26220 Apr  3 16:17 install.log

-rw-r--r-- 1 root root  3327 Apr  3 16:16 install.log.syslog

drwxr-xr-x 2 root root  4096 Apr 14 00:22 Templates
d表示目录文件  rwx表示所有者权限  r-x表示组权限  r-x表示其它用户权限

2.权限的文本模式:r-4 w-2  x-1   0-没有权限

相对权限操作:用户类型(u:所有者 g:组 o:其它用户 a:所有用户) 操作(+ - =) 权限(r w x )

[root@rusky home]# ls -l 99user.ldif

-rwxr-xr-x 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod g+w 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

-rwxrwxr-x 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod 0-x 99user.ldif 

chmod: invalid mode: `0-x'

Try `chmod --help' for more information.

[root@rusky home]# chmod o-x 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

-rwxrwxr-- 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod ugo+w 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

-rwxrwxrw- 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod 000 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

---------- 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod u=rw 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

-rw------- 1 root root 1052364422 Apr 22 00:35 99user.ldif

[root@rusky home]# chmod 777 99user.ldif 

[root@rusky home]# ls -l 99user.ldif 

-rwxrwxrwx 1 root root 1052364422 Apr 22 00:35 99user.ldif

3.在使用chmod设置权限时,如果指定文件为目录,则受影响的只是目录本身,目录中的文件和子文件不受影响。

[root@rusky home]# chmod 777 king

[root@rusky home]# ls -ld king  #-d  只列出目录本身

drwxrwxrwx 11 root root 4096 Apr 28 01:50 king

[root@rusky home]# ls -l king  #没有参数d,则列出目录里的所有文件

total 76

drwxr-xr-x  8 root root  4096 Apr 28 01:43 com_sun_web_ui

drwxr-xr-x  2 root root  4096 Apr 28 01:43 css

drwxr-xr-x 10 root root  4096 Apr 28 01:43 html

drwxr-xr-x  9 root root  4096 Apr 28 01:43 images

drwxr-xr-x  2 root root  4096 Apr 28 01:43 js

drwxr-xr-x  2 root root 45056 Apr 28 01:43 jsp

drwxr-xr-x  2 root root  4096 Apr 28 01:44 META-INF

drwxr-xr-x 12 root root  4096 Apr 28 02:26 testdir

drwxr-xr-x  4 root root  4096 Apr 28 01:43 WEB-INF

[root@rusky home]# chmod -R 777 king   #加参数-R表示递归授权,目录里的文件和子目录也有相同的权限

[root@rusky home]# ls -l king

total 76

drwxrwxrwx  8 root root  4096 Apr 28 01:43 com_sun_web_ui

drwxrwxrwx  2 root root  4096 Apr 28 01:43 css

drwxrwxrwx 10 root root  4096 Apr 28 01:43 html

drwxrwxrwx  9 root root  4096 Apr 28 01:43 images

drwxrwxrwx  2 root root  4096 Apr 28 01:43 js

drwxrwxrwx  2 root root 45056 Apr 28 01:43 jsp

drwxrwxrwx  2 root root  4096 Apr 28 01:44 META-INF

drwxrwxrwx 12 root root  4096 Apr 28 02:26 testdir

drwxrwxrwx  4 root root  4096 Apr 28 01:43 WEB-INF

4.改变文件的所有权

chown[options] user[:group] file1 file2...

-f:强制更改所有者  -R:递归更改所有者

chown -R user1:group1 testdir1   将目录testdir1及其子目录和文件的用户所有权和组所有权转交给group1组的user1用户

5.修改组所有权

chgrp [options] [group] file

6.特殊权限命令setuid:只针对可执行文件而言,把普通用户的权限临时提到root账号权限。同r w x一样,setuid权限使用字符s表示

例如:passwd和shadow文件,只有root用户才有权限修改这两个文件,当普通用户修改自己的密码时,就要读写这两个文件,权限得到临时提升……

setuid权限使用数值4表示如:chmod 4755 /etc/passwd  或chmod u+s /etc/shadow

7.setgid权限,与setuid类似,这使任意使用者在执行某个文件时,都绑定了用户所属组的权限。如果某目录dir1被设置为setgid权限时,当普通用户在dir1下新建文件时,被新建的文件所属的组与dir1目录所在组相同,而文件的所有者还是文件的创建者。 chmod g+s dir1   #setgid同样使用字符s表示。而使用数值2表示   chmod 2755 dir1

通常这两种权限会一起使用,绑定某个特殊用户及其组的特殊权限。如:chmod ug+s testfile   chmod 6755 testfile

8.粘滞位t  ,数字1表示

在/tmp目录下新建的文件,如果没有设置t权限,则任何用户都可进行rwx操作。如果设置了t权限,则只有文件的创建者才有rwx权限。如:chmod +t testfile   chmod -t testfile   chmod 1755 testfile   chmod 0755 testfile

9.权限掩码umask,用于指定文件或目录被创建时的默认访问权限

在大多数unix系统中,A(不可执行的普通文件在创建时,其默认模式为:666   可执行的文件和目录默认模式为777 )

[root@rusky ~]# umask    #查看系统默认umask值022 

文件或目录在创建时的默认访问权限为A-022

10.目录的权限

目录的读权限允许用户查看目录中的文件列表:即可使用ls dir命令;写权限则允许用户在目录中创建、删除、修改文件;执行权限允许用户进入目录中,并搜索该目录中的文件。

 

你可能感兴趣的:(文件)