精华内容
下载资源
问答
  • UMASK与ACL

    2019-09-18 07:08:59
    UMASK与ACL 1. 设置默认权限 umask umask 可以定义新建文件和新建文件夹的权限 umask+default=dir777/...非特权用户umask002 root的umask是022 umask :查看 umask n :设定 示例:umask 002 umask u=rw,...

    UMASK与ACL

    1. 设置默认权限 umask

    umask 可以定义新建文件和新建文件夹的权限

    umask+default=dir777/file666
    022       默认值

    非特权用户umask是002  
    root的umask是022  
    
    umask :查看  
    umask n :设定   
        示例:umask 002  
              umask u=rw,g=r,o=   
    
    umask -S 模式方式显示  
    umask -p 输出可被调用  
        例:umask -p >> ~adong/.bashrc  

    2. 文件默认权限

        666-umask,如果结果,有奇数,就加1,偶数不变
    022
    644
    666

    3. 目录默认权限

        777-umask
    022
    755
    777
    file 600
    666-600=066
    dir
    777-066=711

    4. 将umask写入家目录配置文件

    用户设置:~/.bashrc (不影响其他用户)
    全局设置:/etc/bashrc (不推荐)

    5. umask 本质的含义

         umask 125 
         666
         umask中 0表示不关心 不检查  1表示 将对应的权限位去除
    
         110110110
         001010101
    
         110100010
         642
    
         看到奇数就加一
    • (umask 066;touch file) 临时性

    6. linux文件系统上的特殊权限

    SIUD SGID Sticky
    三种常用:r,w,x user,group,other

    安全上下文

    前提:进程有属主和属组
    (1)任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行权限
    (2)启动为进程之后,其进程的属主为发起者,进程的属组为发起者的组
    (3)进程访问文件是的权限,取决于进程的发起者
        (a)进程的发起者,同文件的属主;则应用文件属主权限
        (b)进程的发起者,属于文件的属组;则应用文件属组权限
        (c)应用文件"其他"权限 

    SUID 4 作用在所有者上

    添加suid权限:
            chmod u+s  file
            chmod 4755 file
        只能作用在二进制的可执行程序文件上,当用户执行此程序时, 将会临时继承此程序所有者的权限

    SGID 2 作用在所属组上

    添加sgid权限:
            chmod g+s file
            chmod 2755 file
        1.作用在二进制的可执行程序文件上,当用户执行此程序时,将会临时继承此程序所属组的权限
        2.可以作用在目录上,当用户在此目录中创建新文件时,文件的所属组会自动继承目录的所属组

    Sticky 1 粘滞位

    添加Sticky权限:
            chmod o+t dir
            chmod 1755 dir
        只能作用在目录上,用户只能删除自己的文件

    设定文件特定属性

    chattr +i 不能删除,改名,更改 
          -R 递归
    chattr +a 只能追加内容
    lsattr    显示特定属性

    7. 访问控制列表

    ACL:Access Control List,实现灵活的权限管理

    除了文件的所有者,所属组和其他人,可以对更多的用户设置权限
    Centos7默认创建的xfs和ext4文件系统具有ACL功能
    Centos7之前的版本,默认手工创建的ext4文件系统无ACL功能,需手动增加
        tune2ft -o acl /del/sdb1
        mount -o acl /del/sdb1 /mnt/test
    ACL生效顺序:所有者,自定义用户,自定义组,其他人 
    
    文件权限依赖于文件系统 vfat文件系统不支持文件权限

    8. FACL --> 文件系统

    getfacl file

    • 查看acl权限列表
      常用选项:
      -a,  --access   仅显示文件访问控制列表
      -d, --default   仅显示默认的访问控制列表
      -R, --recursive 递归显示子目录
      -t, --tabular   使用制表符分隔的输出格式

      setfacl

      • 设置facl权限
        -m 修改权限
            -m u:adong:0 file / g:[组名]:rwx 设置文件ACL权限   modify(修改)
        -x 删除权限
        -b 清空权限
        -M 调取文件
        -d --default:设定默认的acl规则
            递归设置acl文件只能对现有的文件实现
            后面新建的文件是没有acl权限的.如果你想后面新建文件也能实现acl权限,就用默认acl权限
        -R 递归
        -X file.acl dirctory 删除目录下每个文件的权限
    
    示例:setfacl  -m  d:u:wang:rx directory   默认每个文件都有rx权限
    
        echo u:adong:rw > acl.txt
        setfacl -M acl.txt f1 
        getfacl f1
    加了acl权限以后所属组的权限已经不是原来所属组的权限,是mask权限
    如果一个用户属于多个组,那它将继承多个组的累加权限

    mask只影响除所有者和other的之外的人和组的最大权限

    Mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限(Effctive Permission)
    用户或组的设置必须存在于mask权限设定范围内才会生效

    setfacl -m mask::rx file   
        --set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能像-m一样只是添加ACL就可以  
    
        例:   
            setfacl --set u::rw,u:adong:rw,g::r,o::- file1  

    为多用户或者组的文件和目录赋予访问权限rwx

    mount -o acl/directory
    getfacl file |directory 
    setfacl -m u:wang:rx file |dirctory
    setfacl -m g:admins:rw file |dirctory
    setfacl -x u:wang file |directory 
    setfacl -b file1  清空所有ACL权限
    getfacl file1 | setfacl --set-file=- file2 复制file1的acl权限给file2

    9. 备份和恢复ACL

    主要的文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p参数。但是 tar等常见的备份工具是不会保留目录和文件的ACL信息

    getfacl -R /tmp/dir1 > acl.txt
    setfacl -R -b /tmp/dir1
    setfacl -R --set-file=acl.txt /tmp/dir1
    setfacl --restore acl.txt
    setfacl -R /tmp/dir1

    10. 练习

    • 在/testdir/dir⾥创建的新⽂件⾃动属于g1组,组g2的成员如:alice能对这些新⽂件有读写权限,组g3的成员 如:tom只能对新⽂件有读权限,其它⽤户(不属于g1,g2,g3)不能访问这个⽂件夹。
    mkdir /testdir/dir -p 
    groupadd g1 
    groupadd g2 
    groupadd g3 
    
    useradd -G g2 alice 
    useradd -G g3 tom  
    
    chgrp  g1 /testdir/dir 
    chmod 2770 /testdir/dir 
    
    setfacl -Rm d:g:g2:rw /testdir/dir/  设置g2组的默认权限为rw
    setfacl -Rm g:g2:rwx /testdir/dir/   设置g2组的权限为rwx
    setfacl -Rm g:g3:rx /testdir/dir/    设置g3组的权限为rx
    getfacl dir/
    # file: dir/
    # owner: root
    # group: g1
    组权限
    user::rwx
    group::r-x
    group:g2:rwx
    group:g3:r-x
    mask::rwx
    other::r-x
    (默认权限)
    default:user::rwx
    default:group::r-x
    default:group:g2:rw-
    default:mask::rwx
    default:other::r-x
    
    • 备份/testdir/dir里所有文件的ACL权限到/root/acl.txt中,清除/testdir/dir中所有ACL权限,最后还原ACL权限
      # getfacl -R /testdir/dir/ > /root/acl.txt
      # setfacl -R -b /testdir/dir
      # getfacl /testdir/dir
      # setfacl -R --set-file=/root/acl.txt /testdir/dir
      chmod -R 444 /  危险
      chown -R adong / 危险  
    展开全文
  • umask

    2018-12-03 04:53:37
    更改umask命令:umask 002(更改umask002) 根据umask判断创建的目录及文件的权限是多少:创建文件权限:666-022=(rw-rw-rw-) - (----w--w-) = 644(rw-r--r--)创建目录权限:777-022(rwxrwxrwx) - (----w--w-) = ...

    umask

    更改umask命令:umask 002(更改umask为002)

    根据umask判断创建的目录及文件的权限是多少:
    创建文件权限:666-022=(rw-rw-rw-) - (----w--w-) = 644(rw-r--r--)
    创建目录权限:777-022(rwxrwxrwx) - (----w--w-) = 755(rwxr-xr-x)
    (-)-(x)=(-)
    (-)-(w)=(-)

    转载于:https://blog.51cto.com/14079728/2325086

    展开全文
  • umask 使用

    2018-12-18 19:26:27
    例如,umask002 所对应的文件和目录创建缺省权限分别为6 6 4(666 减 2)和7 7 5(777 减 2)。 还有另外一种计算umask值的方法。我们只要记住umask是从权限中“拿走”相应的位即可   文件和目录创建缺省权限 ...

    例如,umask值002 所对应的文件和目录创建缺省权限分别为6 6 4(666 减 2)和7 7 5(777 减 2)。

    还有另外一种计算umask值的方法。我们只要记住umask是从权限中“拿走”相应的位即可

     

    文件和目录创建缺省权限  分别为 666     775 (创建的最大权限  这里不知道为什么最大权限是666 775而 不是 777    777)

    umask就是拿走的权限  当umask是002时,

    则    文件    666 -  002    =   664  

            目录   775  -  002  =     775

          

     

    展开全文
  • Umask issue

    2020-12-27 08:38:06
    t to launch gnome-terminal, then my umask remains at the default value of <code>002</code>. <p>This method of spawning the terminal is the site of the problem: <pre><code> subprocess.Popen(args, cwd&#...
  • linux umask解析

    2013-10-12 17:34:29
    如:002 表示创建文件的权限是664,创建文件夹的权限是775。 还有种直观的显示方法: [richard@localhost ~]$ umask -S u=rwx,g=rwx,o=rx 修改默认umask [richard@localhost ~]$ umask o=rx

    linux umask解析

    是用户默认权限的补码

    如:002

    表示创建文件的权限是664,创建文件夹的权限是775。

    还有种直观的显示方法:

    [richard@localhost ~]$ umask -S
    u=rwx,g=rwx,o=rx

    修改默认umask

    [richard@localhost ~]$ umask o=rx

    展开全文
  • 设置umask

    2013-06-24 15:48:00
    umask 002 例子:umask为003,建立的文件与目录权限是什么? umask为003,所有去掉的属性为-------wx,因此 文件 -rw-rw-r-- 目录 drwxrwxr-- 转载于:...
  • 关于umask

    2017-11-13 02:04:00
    1,文件及目录的umask 系统默认文件的umask值为:666(rw-rw-rw-),目录的umask值为777(rwxrwxrwx),因为在linux中X权限对文件来说就是可执行,对目录来说就是可以打开,如果用户没有对目录的X权限,是打不开... 002...
  • 18.3. umask

    2017-12-19 14:55:00
    [root@development ~]# umask 0022 [root@development ~]# umask -S ...umask 002 原文出处:Netkiller 系列 手札 本文作者:陈景峯 转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。 ...
  • 修改umask

    千次阅读 2012-10-25 11:46:05
    临时修改(只是当前终端有效,下次登录就没有了) umask 000 注:000为权限所表示的八进制数据,如:022, 002 永久修改: 修改/etc/bashrc 文件 行8~行12 ... then umask 002else umask 0...
  • umask命令用法

    2015-03-13 15:20:11
    NAME  umask — get or set the file mode creation mask SYNOPSIS  umask [−S] [mask] EXAMPLES  Either of the commands:  umask a=rx,ug+w  umask 002  sets
  • umask 计算方法

    千次阅读 2013-06-19 20:50:05
    计算出你的umask值: 可以有几种计算umask值的方法,通过设置umask值,可以为新创建的文件和目录设置缺省权限。...例如,umask002 所对应的文件和目录创建缺省权限分别为6 6 4和7 7 5。 还有另外一种计
  • umask setuid setgid

    2016-11-16 15:10:00
    cat /etc/bashrc if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ];#用户UID大于200并且id -gn 用户组名 id -un ... then umask 002 else umask 022 fi 若umask为051 创建普通文件默认权限理论上应...
  • chmod与umask区分

    2018-12-26 10:00:52
    chmod命令用于改变文件的目录的访问权限,他是一条非常重的系统命令。用户可以用其控制文件或目录的访问权限。  ...通常文件权限只会用到后3位,即002。  umask 与 chmod 命令设定刚好相反,uma...
  • Linux 文件权限 umask

    2016-12-05 16:43:36
    一般情况,root的默认权限 umask 为 022,一般身份用户为 002,关于默认 umask 的设置可以参考/etc/bashrc 这个文件。 可以用 #umask 查看次用户默认权限, 也可以用 #umask -S umask 的值为022时,user并没有...
  • linux umask权限算法

    2019-04-03 19:19:03
    umask ---umask 查看当前的umask值,它表示要去掉的权限 文件、目录最终权限的算法:满权限-umask权限=最终权限目录的默认满权限:777 例如:777-022=755 777-031=746 rwx rwx rwx文件...普通用户:002. umas...
  • Linux的umask理解

    2017-12-03 00:15:01
    查看所属用户的umask只需要执行umask命令即可,对于普通用户一般为002 在Linux系统上,所有文件的系统默认预设权限是666,目录而言是777 那当我们创建一个文件的时候所生成的权限是什么呢? 666 代表着 rw-rw-rw...
  • 第一个是特殊权限用的 先不用管 002 表示 user 和grep 没有被拿掉任何权限 other 被拿掉了 w 权限 rwx 421 umask [-p] [-S] [mode] The user file-creation mask is set to mode. If mode begins with...
  • linux 之umask命令

    2013-07-13 15:27:03
    普通用户的umask默认值是002,root用户是022 sjyu@sjyu-pc:~/桌面$ umask 0002 sjyu@sjyu-pc:~/桌面$ sudo -i [sudo] password for sjyu: root@sjyu-pc:~# umask 0022 root@sjyu-pc:~# 总结参照了...
  • 什么是umask Linux中,“Every thing is a file”, 文件就涉及到...一般用户的umask默认是002, 其它特殊用户如系统进程等的umask是022。 用户也可以在自己的bashrc文件中设置自己默认的umask。 文件权限介绍 在系统的b
  • umask 的使用体会

    2012-01-17 23:08:42
    Linux默认创建文件的权限是666(-rw-rw-rw-),创建...默认情况下,一般帐号的umask值是002,如下图 root帐号的umask值是022 如何得到帐号创建的文件或目录的权限呢,有的网站上说直接用系统默认的文件权...
  • 在/etc/profile环境变量中,可以发现uid大于199的用户,umask值为002;否则umask值为022;即普通用户创建文件或者文件夹权限为775,root用户创建文件或者文件夹权限为755. 实际测试发现,无论root还是普通用户,...

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 234
精华内容 93
关键字:

002umask