11、用户、组(三):用户权限管理

1.有哪些权限?
我们常常会使用“ls -l”来查看某一用户对该文件或目录的操作权限。

 ~]#ls -l
总用量 320
-rw-r--r--. 1 root root    55 9月   5 10:46 
drwxr-xr-x. 2 root root  4096 7月   9 11:21 

ls -l 
            rwxrwxrwx:
                左三位:定义user(owner)的权限
                中三位:定义group的权限;
                右三位:定义other的权限

权限:
            r:readable, 读
            w:writable, 写
            x:excutable,执行

            文件:
                r:可获取文件的数据;
                w: 可修改文件的数据;
                x:可将此文件运行为进程;

            目录:
                r:可使用ls命令获取其下的所有文件列表;
                w: 可修改此目录下的文件列表;即创建或删除文件;
                x: 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息;

进程安全上下文:
            进程对文件的访问权限应用模型:
                进程的属主与文件的属主是否相同;如果相同,则应用属主权限;
                否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;
                否则,就只能应用other的权限;

权限组合机制:
            ---     000      0
            --x     001     1
            -w-    010      2
            -wx    011     3
            r--     100      4
            r-x     101      5
            rw-    110      6
            rwx    111     7

2.权限管理命令:
         chmod命令:
               chmod [OPTION]... MODE[,MODE]... FILE...
               chmod [OPTION]... OCTAL-MODE FILE...
               chmod [OPTION]... --reference=RFILE FILE...

         三类用户:
                       u:属主  
                       g:属组
                       o:其它
                       a: 所有
        (1) chmod [OPTION]... MODE[,MODE]... FILE...

                       MODE表示法:
                           赋权表示法:直接操作一类用户的所有权限位rwx;
                               u=
                               g=
                               o=
                               a=

                           授权表示法:直接操作一类用户的一个权限位r,w,x;
                               u+, u-
                               g+, g-
                               o+, o-
                               a+, a-

          (2) chmod [OPTION]... OCTAL-MODE FILE...

          (3) chmod [OPTION]... --reference=RFILE FILE...

                   选项:
                       -R, --recursive:递归修改

                   注意:用户仅能修改属主为自己的那些文件的权限;

3.从属关系管理命令:chown, chgrp

                chown命令:
                chown [OPTION]... [OWNER][:[GROUP]] FILE...
                chown [OPTION]... --reference=RFILE FILE...

                选项:
                    -R:递归修改

                chgrp命令:

                   chgrp [OPTION]... GROUP FILE...
                   chgrp [OPTION]... --reference=RFILE FILE...

               注意:仅管理员可修改文件的属主和属组;

4.umask:文件的权限反向掩码,遮罩码;
               文件:
                   666-umask
               目录:
                   777-umask

               注意:之所以文件用666去减,表示文件默认不能拥有执行权限;如果减得的结果中有执行权限,则需要将其加1;
                   umask: 023
                       666-023=644
                       777-023=754

               umask命令:
                   umask:查看当前umask
                   umask MASK: 设置umask

               注意:此类设定仅对当前shell进程有效;

5.install命令:
        install - copy files and set attributes

        单源复制:
               install [OPTION]... [-T] SOURCE DEST
           多源复制:
               install [OPTION]... SOURCE... DIRECTORY
               install [OPTION]... -t DIRECTORY SOURCE...
           创建目录:
               install [OPTION]... -d DIRECTORY...

           常用选项:
               -m, --mode=MODE:设定目标文件权限,默认为755;
               -o, --owner=OWNER:设定目标文件属主;
               -g, --group=GROUP:设定目标文件属组;

6.mktemp命令:
        mktemp - create a temporary file or directory

        mktemp [OPTION]... [TEMPLATE]   

        TEMPLATE为模板文件名:filename.XXX

        至少三个X(X必须为大写字母),是一个随机数; 
         tmp.XXXX(X必须为大写字母)

            常用选项
                -d:创建临时目录而非文件;
                -p DIR,--tmpdir[=DIR]:
             设定临时文件所在的目录,默认为当前目录,或为TMPDIR环境变量设定的路径(centos7未知);

        注意:mktemp会将创建的临时文件名直接返回,因此,可直接通过命令引用保存起来;

 

你可能感兴趣的:(学习心得)