linux 文件目录默认权限_linux 目录创建文件默认权限 - CSDN
  • linux中,一位用户在创建文件目录时,对其具有的权限都是一样的,如需更改,需要chmod命令做相应的更改。为什么?其实是权限掩码起作用了。  权限掩码的作用就是规范初创文件目录时候的权限设置,免去了创建...

        在linux中,一位用户在创建文件和目录时,对其具有的权限都是一样的,如需更改,需要chmod命令做相应的更改。为什么?其实是权限掩码起作用了。    

        权限掩码的作用就是规范初创文件和目录时候的权限设置,免去了创建后再次修改权限的问题。因此,权限掩码的设置需要合理。

       1、查看用户的权限掩码

             命令:umask  

    示例

    dyp930@ubuntu:~/work$ umask    //初创文件的最大权限是666,减去掩码0002,表示初创文件的权限是664。初创目录的最大权限是777,减去掩码,
    0002
    
    
    dyp930@ubuntu:~/work$ touch a.txt
    dyp930@ubuntu:~/work$ mkdir a
    dyp930@ubuntu:~/work$ ls -lrt
    -rw-rw-r-- 1 dyp930 dyp930    0 Jun 28 06:02 a.txt //权限为664
    drwxrwxr-x 2 dyp930 dyp930 4096 Jun 28 06:02 a     //权限为775
    

    2、修改用户的权限掩码

         命令:umask  abc

    设置默认掩码为abc后,如下公式即为文件的初创权限。

    备注:对于文件,掩码abc的实际值为偶数值,需要向下减1.
    ① 新创建的文件的权限为:(7-a)(7-b)(7-c)  ,如果a/b/c中有一位为0,则相减之后的每位奇数都要减1.
    ② 新创建的目录的权限为:(7-a)(7-b)(7-c)

    示例

    dyp930@ubuntu:~/work$ umask 005
    dyp930@ubuntu:~/work$ umask
    0005
    dyp930@ubuntu:~/work$ touch b.txt
    dyp930@ubuntu:~/work$ mkdir b
    dyp930@ubuntu:~/work$ ls -lrt
    total 8
    -rw-rw-r-- 1 dyp930 dyp930    0 Jun 28 06:02 a.txt
    drwxrwxr-x 2 dyp930 dyp930 4096 Jun 28 06:02 a
    -rw-rw--w- 1 dyp930 dyp930    0 Jun 28 06:05 b.txt   
    drwxrwx-w- 2 dyp930 dyp930 4096 Jun 28 06:05 b
    

    --完结

    展开全文
  • 新建文件默认权限为666,新建目录默认权限为777。但是要"减去" umask的值,umask的值可以使用umask命令看到,一般情况下,root用户的为022,普通用户为002。这里的"减"并非数字上相减,而是减去相应的权限。如果umask...
    Linux里新建文件/目录的默认权限

    新建文件默认权限为666,新建目录默认权限为777。但是要"减去" umask的值,umask的值可以使用umask命令看到,一般情况下,root用户的为022,普通用户为002。这里的"减"并非数字上相减,而是减去相应的权限。如果umask为022,则表示:user不减权限,group减掉write权限,other减掉write权限;如果umask为245,表示:user 减去write权限,group减去read权限,other减去read和execute权限。

    示例1, root用户umask为022,创建文件和目录后默认的权限
    root@db2a:/tmp# umask
    0022
    root@db2a:/tmp# touch file1
    root@db2a:/tmp# ls -l file1
    -rw-r--r-- 1 root root 0 Aug 20 17:07 file1
    root@db2a:/tmp# mkdir dir1
    root@db2a:/tmp# ls -ld dir1/
    drwxr-xr-x 2 root root 4096 Aug 20 17:12 dir1/

    示例2,普通用户umask为002:
    qingsong@db2a:/tmp$ umask
    0002
    qingsong@db2a:/tmp$ touch file2
    qingsong@db2a:/tmp$ ls -l file2
    -rw-rw-r-- 1 qingsong qingsong 0 Aug 20 17:11 file2
    qingsong@db2a:/tmp$ mkdir dir2
    qingsong@db2a:/tmp$ ls -ld dir2
    drwxrwxr-x 2 qingsong qingsong 4096 Aug 20 17:13 dir2

    示例3,一个极端的情况,将umask设置为666,则新建文件没有“任何"权限:
    root@db2a:/tmp# umask 666
    root@db2a:/tmp# umask
    0666
    root@db2a:/tmp# touch file3
    root@db2a:/tmp# ls -l file3
    ---------- 1 root root 0 Aug 20 17:16 file3
    展开全文
  • 1,文件默认权限是没有x的,即文件的最大默认权限为666(-rw-rw-rw) 2,由于进入目录目录的x权限有关,故目录的最大默认权限为777(drwxrwxrwx)   查看默认权限需要使用umask命令: [123@123 ~]$ umask //...

    1,文件的默认权限是没有x的,即文件的最大默认权限为666(-rw-rw-rw)

    2,由于进入目录和目录的x权限有关,故目录的最大默认权限为777(drwxrwxrwx)

     

    查看默认权限需要使用umask命令:

    [123@123 ~]$ umask           //数字方式显示
    0022
    [123@123 ~]$ umask -S        //符号方式显示
    u=rwx,g=rx,o=rx

    以数字范式显示有4个数字,只看后3个即可,第一个为特殊权限使用

    [123@123 ~]$ touch test1
    [123@123 ~]$ ls -al test1
    -rw-r--r-- 1 123 123 0 05-20 14:46 test1
    [dhcp2@LCDMP2 ~]$ mkdir test2
    drwxr-xr-x  2 dhcp2 dhcp2 4096 05-20 14:46 test2

     

    修改默认权限:

    umask xyz(umask指定的是默认值需要减掉的权限,x为owner需要去掉的权限,y为group需要去掉的权限,z为other需要去掉的权限)

    r -> 4,w -> 2,x -> 1,文件的默认值为-rw-rw-rw,如果需要文件的默认权限为-rw-rw---,则需要在原权限的基础上减去other的rw权限,即减去r + w =6

    umask 006

    [123@123 ~]$ umask 006
    [123@123 ~]$ touch test3
    [123@123 ~]$ ls -al test3
    -rw-rw---- 1 dhcp2 dhcp2 0 05-20 15:01 test3


     

    展开全文
  • 2.文件/目录默认权限 问题 1)以用户root登入,测试umask掩码值 查看当前的umask值 新建目录udir1、文件ufile1,查看默认权限 将umask设为077,再新建目录udir2、文件ufile2,查看默认权限 请把umask值...

    2.文件/目录的默认权限
    问题
    1)以用户root登入,测试umask掩码值
    查看当前的umask值
    新建目录udir1、文件ufile1,查看默认权限
    将umask设为077,再新建目录udir2、文件ufile2,查看默认权限
    请把umask值重新设置为022
    2)以用户zhangsan登入,查看当前的umask值
    3)请问为什么普通用户的家目录权限都是700
    方案
    本题的主要目的主要是让大家能够记住并理解umask值的作用,它决定着这个Shell环境创建文件以及目录的默认权限。
    步骤
    实现此案例需要按照如下步骤进行。
    步骤一:以用户root登入,测试umask掩码值
    查看当前的umask值
    新建目录udir1、文件ufile1,查看默认权限
    将umask设为077,再新建目录udir2、文件ufile2,查看默认权限
    请把umask值重新设置为022
    命令操作如下所示:
    [root@localhost ~]# whoami //确保自己登录身份是root
    root
    [root@localhost ~]# umask //查看当前umask值,需用最大权限777减去022
    0022
    [root@localhost ~]# umask –S //另外一种查看方式,-S选项是直接显示默认权限
    u=rwx,g=rx,o=rx
    分析: 查看创建目录以及文件的默认权限,是否与umask一致,注意文件默认安全起见没有赋予x执行权限
    [root@localhost ~]# mkdir /udir1 //创建测试目录
    [root@localhost ~]# touch /ufile1 //创建测试文件
    [root@localhost ~]# ls -ld /udir1/ //查看是否与umask值相符合
    drwxr-xr-x. 2 root root 4096 2月 26 16:37 /udir1/
    [root@localhost ~]# ls -l /ufile1 //查看是否与umask值相符合
    -rw-r–r--. 1 root root 0 2月 26 16:37 /ufile1
    [root@localhost ~]# umask 077 //更改umask值
    [root@localhost ~]# umask //查看是否修改成功
    0077
    [root@localhost ~]# umask –S
    u=rwx,g=,o=
    [root@localhost ~]# mkdir /udir2 //创建测试目录
    [root@localhost ~]# touch /ufile2 //创建测试文件
    [root@localhost ~]# ls -ld /udir2 //查看是否与umask值相符合
    drwx------. 2 root root 4096 2月 26 16:43 /udir2
    [root@localhost ~]# ls -l /ufile2 //查看是否与umask值相符合
    -rw-------. 1 root root 0 2月 26 16:44 /ufile2
    [root@localhost ~]# umask 022 //更改umask值为022
    [root@localhost ~]# umask //查看是否修改成功
    0022
    步骤二:以用户zhangsan登入,查看当前的umask值(本题的目的主要是为了让大家知道管理员与普通用户的默认umask是不同的)
    命令操作如下所示:
    [root@localhost ~]# umask //查看root的umask值
    0022
    [root@localhost ~]# su – zhangsan //切换zhangsan用户身份
    [zhangsan@localhost ~]$ umask //查看zhangsan的umask值
    0002
    步骤三:请问为什么普通用户的家目录权限都是700
    分析: 本题主要考察,useradd这条命令在执行的时候,与那些默认配置文件相关,有两个配置文件分别为/etc/default/useradd、/etc/login.defs。
    命令操作如下所示:
    [root@localhost ~]# grep -v “^#” /etc/login.defs | grep -v "^KaTeX parse error: Unexpected character: '' at position 83: …mask值 3.设置归属关系 ̲问题 1)新建/tarena1… ls -l /tarena1/ //查看是否具备r权限
    总用量 0
    [gelin02@localhost ~]$ cd /tarena1/ //查看是否具备x权限
    [gelin02@localhost tarena1]$ pwd
    /tarena1
    步骤五:请将gelin01加入tarena组,并将tarena1目录权限设置为450,测试gelin01用户能否进入该目录
    命令操作如下所示:
    [root@localhost ~]# grep tarena /etc/group //查看该组成员列表
    tarena❌502:gelin02
    [root@localhost ~]# gpasswd -a gelin01 tarena //将gelin01用户加入tarena组
    Adding user gelin01 to group tarena
    [root@localhost ~]# grep tarena /etc/group //查看该组成员列表是否加入成功
    tarena❌502:gelin02,gelin01
    [root@localhost ~]# ls -ld /tarena1/ //查看其权限划分情况
    drwxr-x—. 2 gelin01 tarena 4096 2月 26 17:10 /tarena1/
    [root@localhost ~]# chmod 450 /tarena1/ //更改权限
    [root@localhost ~]# ls -ld /tarena1/ //查看其权限划分情况
    dr–r-x—. 2 gelin01 tarena 4096 2月 26 17:10 /tarena1/
    分析: 此时注意首先归属关系要清楚,gelin01是所有者而gelin01又属于tarena组,那接下来在看所有者权限是只读权限只有一个r权限,而所属组成员所具备的的是rx权限,这个时候我们要想一想了,现在权限发生不一致的情况,那么gelin01具备什么权限呢?是r还是rx。我们可以测试一下。
    [root@localhost ~]# su - gelin01 //切换用户身份测试
    [gelin01@localhost ~]$ ls /tarena1/ //查看是否具备r权限
    [gelin01@localhost ~]$ //可以看到具备r权限
    [gelin01@localhost ~]$ cd /tarena1/ //能够切换成功说明是rx,否则是只读r权限
    -bash: cd: /tarena1/: 权限不够
    分析: 很明显不能够切换成功,是只读权限。这里告诉大家Linux对于权限判别的一个优先顺序,是所有者>所属组>其他人,也就是说首先Linux系统判别的是你属于本目录的归属关系的哪一种,首先看你是不是所有者,再看你是不是所属组,最后看你是不是其他人。就拿本题来举例,首先看gelin01是不是所有者,可以看出gelin01是所有者那么权限直接就按照所有者的权限执行,也不会再看后面。也不会所有者权限与所属组权限取交或并,本题目的是让大家记住和体会Linux对于权限判别的一个优先顺序。

    展开全文
  • 在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,那么这些默认权限是怎么控制的呢?答案是“umask”权限掩码。一般默认的umask值为022,其最终效果就是...
  • 新建目录udir1、文件ufile1,查看默认权限 将umask设为077,再新建目录udir2、文件ufile2,查看默认权限 请把umask值重新设置为022 2)以用户zhangsan登入,查看当前的umask值 3)请问为什么普通用户的家目录权限都...
  • 2. 文件默认权限 权限:644在看一下umask命令后的结果 umask是设置文件目录默认权限的命令 目录是 777 - 022 = 755 文件是 666 - 022 = 644 这里看一下我将umask修改成011后的结果来作为验证 目录的默认...
  • 版权声明:转载时请以超链接...linux创建文件文件默认权限为644,目录默认权限为755,默认权限掩码为022。 可以通过umask命令来改变默认文件及目录权限。umask 命令允许用户设定文件创建时的缺省模式,对应每一类用户
  • Linux文件默认权限

    2017-11-22 12:10:10
    022:文件默认权限   二 文件的默认权限 1、文件默认不能建立未执行文件,必须手工赋予执行权限 2、所以文件默认权限最大未666 3、默认权限需要换算成字母再相减 4、建立文件之后的默认权限,为666减去umask...
  • Linux文件目录权限的计算方法 第一步:将默认权限目录777,文件666)和umask值都转换为二进制; 第二步:对umask值取反; 第三步:将默认权限和umask取反的值做与运算; 第四步:将得到的二进制转换为八进制,即...
  • 在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,那么这些默认权限是怎么控制的呢? 答案是“umask”权限掩码。一般默认的umask值为022,其最终效果...
  • 一个文件(或目录)拥有若干个属性,包括(r/w/x)等基本属性,以及是否为目录(d)与文件(-)或连接文件(l)等属性。此外,Linux还可以设置其他系统安全属性,使用chattr来设置,以lsattr来查看,最重要的是可以...
  • Linux文件权限详解

    2018-12-30 19:57:00
    文章目录Linux文件权限详解一、文件权限二、修改文件访问权限的方法三、UMASK值四、三种特殊权限suid、sgid、sticky(sticky权限工作环境中相对常用)五、ACL访问控制列表六、文件权限操作的常用命令 Linux文件权限...
  • linux中的每一个文件目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件目录。   通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问;允许一个预先指定的用户组中的...
  • •若用户建立为”文件”则默认“没有可执行(x)项目”,即只有rw这两个项目,也就是最大为666分,默认属性如下: -rw-rw-rw- • 若用户建立为”目录”,则由于x与是否可以进入此目录有关,因此默认为所有权限均开放...
  • LINUX中 设置了umask 创建的默认文件和目录的权限普通文件默认是644 自已有读写(rw),同组人员有读(r),其它有读(r) 默认权限可通过umask 修改 默认umask 为022 文件:666 - 022 = 644 目录:777 - 022 = 755 ...
  • 我的linux学习之路 详解linux下文件和目录的默认权限计算 当新建一个文件和目录时,很多人会很关心其权限,但是否想过其权限是怎么计算来的,这就与umask...1.文件默认权限的计算方法为:666-umask,但文件默认是不具
1 2 3 4 5 ... 20
收藏数 333,366
精华内容 133,346
关键字:

linux 文件目录默认权限