文件的权限

1.文件和目录属性的查看

    ls -l filename 

    ls -ld directoryname 

    文件的权限

   - rw-r--r--  1 root root 0 Apr  2 22:25  file

   (1) -   表示文件的类型

            -表示普通文件   d表示目录   s表示套接字   l表示软连接   p表示管道   c表示字符设备  b表示块设备

    (2)rw-r--r--表示文件所有人,文件所有人所在组,其他人对文件的权限

            r表示read读权限   w表示write写权限   x对文件来说表示能执行文件中的内容,对目录来说表示进入文件

           上边的例子中表示文件的所有者对文件有读写权限,所在组对文件有读权限,其他人对文件有读权限

    (3)1  表示该文件被系统记录的次数      目录中子目录的个数

    (4)root  root表示文件(目录)的拥有人和所在组

    (5)0 表示文件(目录)的大小

    (6)Apr  2  22:25  表示文件(目录)最后一次被更改的时间

    (7)file  表示文件(目录)的名称

2.文件用户和所在组的更改

    chown 用户名称  文件

    chgrp   组名称    文件

    chown  -R 用户名称  目录     更改目录本身以及目录中子目录的所有人

    chgrp   -R  组名称  目录       更改目录本身以及目录中子目录的所有组

     文件的权限

       在这个实验中,可以用watch监视语句来监视,这样看的更加清楚文件的用户和组名

        watch -n 1 ls -l file

   3.权限的识别

       ls -l file  的结果中第2--10字符为文件权限

       权限种类  (1)r      对文件来说是查看文件内容,对目录来说是查看目录中的文件名称

                       (2)w    对文件来说是修改文件内容,对目录来说是是否可以删除目录中的子文件或者子目录

                       (3)x     对文件来说是是否可以执行文件中的程序,对目录来说是是否可以进入目录

        修改文件活目录的权限

                              chmod   ugo+-=rwx

                               r位是2^2=4   w位是2^1=2  x位是2^0=1   则rwx可表示为7   rwxrwxrwx满权限即表示为777

   4.文件的默认权限

          我们发现,新建一个file文件后,ls -l  file后file往往不是满权限,这是因为系统对文件和目录有预留的权限值

          umask   显示系统预留权限值

          umask  077 临时修改系统的预留权限值

          如果要永久的修改系统的权限值,则要编辑/etc/bash(超级用户是73行,普通用户是71行)文件和/etc/profile(超级用 户是62行,普通用户是60行)文件,修改后要刷新系统配置 ,执行source /etc.bash和source /etc/profile

          文件的权限

   5.特殊权限

         (1)强制位,只针对目录,o+t表明这个目录中的文件只能被文件拥有者删除

                 chmod  o+t   目录名称  或者chmod 1777 目录名称 

                文件的权限

        (2)粘制位:针对目录,在目录中建立的文件都归属到该目录所在组

                            针对文件,文件内记录的程序在执行时和执行者的组身份没有关系,而是以二进制文件的所有组的身份执行的

                  chmod g+s 目录或文件名称

                  chmod 2777 目录或文件名称

                   文件的权限

        (3)冒险位:针对文件,表明文件是以文件所有人身份执行的,与是谁发起的无关

                         chmod u+s 文件名称

                         chmod 4777  文件名称  

                    文件的权限  

  6.权限列表

           acl  制定用户对特定的文件拥有特殊的权利

          当开启权限列表以后,ls -l 看到的文件权限是不完全准确的,这时要用个getfacl来查看文件的完整权限

                    文件的权限

      setfacl -m u:student:rwx file   设定student用户对文件有满权限

      setfacl -m  g:student:rw file    设定student组对文件有读写权限

      setfacl -x u:student file            在权限列表中删除student用户的信息

       setfacl -x g:student file            在权限列表中删除student组的信息

       setfacl -b file                           关闭权限列表

       文件的权限

     当设定facl列表后,如果用chmod缩小文件的权限,则mask值会发生改变      

              文件的权限

          文件的权限

   effective 位表示该用户或者组的有效权限,前边的权限不是正确的

7.acl默认权限

             当对目录设定普通的权限列表后,是不能取定特定用户对在目录中新建的文件由指定权限的,如果需要权限自动添加到             新建文件上那么要设定目录的默认权限

                 文件的权限


 文件的权限