文件权限

 文件属性的查看

  ls -l filename

  -|rw-r--r--.|1| root| root|  46 |Oct  1 05:03 |filename

  1    2       3    4     5     6       7            8

1.“-”:文件类型

 -     #####普通文件

 d     ######目录

 c     ######字符设备

 s     ######套接字

 p     ######管道

 b     ######快设备

 l     ######连接

2.“rw-|r--|r--”:文件读取权限

 rw-|r--|r--

  @   #  $

  @所有人的权限

  #所有组的权限

  $其他人的权限

3.“1”:文件内容被记录的次数

4.“root”:文件所有人

5.“root”:文件所有组

6.“46”:文件内容的大小

7.“Oct  1 05:03”:文件最后一次被修改的时间

8.“filename”:文件名字

 

 文件所有人所有组的管理

 chown    username           file|dir  #更改文件所有人

 chown    username:groupname file|dir  #更改文件所有人所有组

 chown -R username           dir       #更改目录本身及里面所有内容的所有人

 chown -R groupname          dir       #更改目录本身及理念所有内容的所有组

监控命令:watch -n l ls -lR /mnt

 

   文件普通权限

 rw-|r--|r--

  u   g   o

 u:文件所有人对文件可以读写

 g:文件组成员对文件可读

 o:其他人对文件可读

 u优先匹配,g次优先,o当u,g不匹配时匹配

1 "r" 对文件:可查看文件中的字符

      对目录:可查看目录中文件的信息

2 "w" 对文件:可更改文件中的字符

      对目录:可在目录中添加删除文件

3 "x" 对文件:可运行文件内记录的程序动作

      对目录:可以进入目录中

4.字符方式修改该文件权限

 chmod [-R] <+|-|=> file|dir

 chmod u-x file1      ######file1拥有者去掉x权限

 chmod g+w file1      ######fule1拥有组添加w权限

 chmod u-x,g+w file1  ######file1拥有者去掉x权限,fule1拥有组添加w权限

 chmod ugo-r file1    ######file1的用户,组,其他人去掉r权限

 chomd ug+x,o-r file1 #file1用户和组添加x权限,其他人去掉r权限

 

5.数字方式修改该文件权限

 chmod 修改后权限值 file

 chmod   777      file

  7=rwx   6=rw-   5=r-x  4=r--  3=-wx  2=-w-  1=--x

 ** r=4   w=2   x=1 **

 rw-|r--|r--

  u   g   o

 u=rw-=4+2+0=6

 g=r--=4+0+0=4

 o=r--=4+0+0=4

 所以文件权限表示为644

 

 系统默认权限的设定

 设定方式

 umask     #查看系统保留权限默认为022

 umask 077 #修改该系统保留权限为077,此设定为临时设定,只在当前shell中生效

 永久设定方式:

 vim /etc/bashrc    #shell

 70     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 71        umask 002  ######普通用户umask

 72     else

 73        umask 077  ######超级用户umask

 74     fi

 vim /etc/profile   #系统

 59     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 60        umask 002  #

 61     else

 62        umask 077

 63     fi

以上两个文件umask设定值必须保持一致

 source /etc/bashrc

 source /etc/profile

让设定立即生效

 

 特殊权限

1.suid      #冒险位

 只针对二进制可执行文件

 文件内记录的程序产生的进程的所有人为文件所有人

 和进程发起人身份无关

设定方式:chmod u+s file

        suid=4

        chmod 4xxx file

2.sgid      #粘制位

 对文件:只针对二进制可执行文件,任何人运行二进制文件

        程序时程序产生的所有组都是文件的所有组,和程

        序发起人组的身份无关

 对目录:当目录有sgid权限后,目录中新建的所有文件的

        所有组都自动归属到目录的所有组之中,和文件建

        立者所在的组无关

设定方式:chmod g+s file|dir

        sgid=2

        chmod 2xxx file|dir

3.sticky    #强制位

 t权限:只针对与目录,当一个目录上有t权限,那么目录中的文件只能被所有人删除

设定方式:chmod o+s directory

        t=1

        chmod 777 directory   ######最高权限