在说umask的用法之前我们现在了解一下,umask是什么?...umask一般是用在你初始创建一个目录或者文件的时候赋予他们的权限 当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情。...一般在/etc/profile、$ [HOME]/.bash_profile或$[HOME]/.profile中设置umask值。 umask值就是指“Linux文件的默认属性需要减掉的权限”。...比如Linux普通文件的最大默认属性是666,目录文件的最大属性是777。但是我们不想要用户在新建立文件时,文件的属性是666或777,那么我们就要设置umask值。...Linux系统预置的umask值是022,那么用户在新建立普通文件时,普通文件的属性就是666-022=644,新建立目录文件时,目录文件的属性就是777-022=755。
Screenshot 2021-10-26 at 10.52.21.png umask: 用于设置新创建文件的默认权限, 不同的用户具有不同的umask, 因此, 使用不同用户创建的文件与文件夹具有不同的权限...umask解释: 四位分别对应: 特殊权限, user, group, other, 对应权限为7-数字 后三位002, 表示 rwx,rwx,rx Screenshot 2021-10-26 at...10.53.37.png umask设定: umask 000 plus: 一般来说, root用户的umask为0022, 普通用户的umask为0002, 这是出于权限控制与安全角度进行考虑的
1.功能 umask为shell内建命令,设置创建文件时的权限掩码。权限掩码由3个八进制数字组成,将777(八进制)减掉权限掩码后,即可得到新创建文件的默认权限。它与chmod的效果刚好相反。...2.语法 umask [选项] [权限掩码] 3.选项说明 选项 功能 -p 显示当前权限掩码 -S 以字符方式表示权限掩码 注意: 处于安全的考虑,普通文件的执行权限不能通过权限掩码来设置,必须手工修改...4.典型示例 (1)显示当前权限掩码 umask //输出0222 umask –S //输出u=rwx,g=rwx,o=rx (2)设置权限掩码 [dablelv@TENCENT64...~]$ umask 044 [dablelv@TENCENT64 ~]$ umask u=rwx,g=wx,o=wx ---- 参考文献 [1]man umask
前言 在进入今天的主题之前,我们先来回顾一下Linux文件权限的相关知识点。Linux里的文件权限可分为3组,分别是文件拥有者、同个群组的其他用户、不同群组的其他用户。...首先这里有4位数,第一位是特殊权限相关的,我们暂且不管,只要关注后面3位数就可以了。其次我们要说明的是在默认权限的设置上,文件和目录是不一样的。那么文件和目录的默认权限分别是怎样的呢?...以上述umask值0022为例,由于文件的默认最大权限为666,第二位是0,表示的是不需要减掉任何权限,因此对于文件拥有者而言,而权限就是6;第三位为2,表示的是需要减掉可写权限,因此对于同个群组的其他用户而言...,其权限就是4;第三位还是2,表示需要减掉可写权限,因此对于不同群组的其他用户而言,其权限就是4。...上文说了,目录的默认最大权限是777,第二位为0,表示的是不需要减掉任何权限,所以对于目录拥有者而言,其权限为7;第三位为2,表示的是需要减掉可写权限,因此对于同个群组的其他用户而言,其权限是可读可执行
umask 002 else umask 022 fi # 设置系统 umask,在 /etc/profile 末尾添加 umask 022即可 $ echo "umask 022"...~/.bash_profile vsftpd中的umask使用 vsftpd中的umask参数: local_umask:本地用户的 umask anon_umask:虚拟用户的 umask # 查看默认...umask $ grep -C 1 umask /etc/vsftpd/vsftpd.conf local_umask=027 # 设置 umask 为 0022 $ sed -i 's/local_umask...# 查看默认 umask $ grep -C 1 umask bin/catalina.sh if [ -z "$UMASK" ]; then UMASK="0027" fi umask $UMASK.../wiki/Umask http://www.man7.org/linux/man-pages/man2/umask.2.html
最近开始学习linux ,看完马哥的linux课程关于umask的这个部分, 写这篇博客希望加深下我对umask的理解 和对umask不太清楚的博友一些帮助。...3 基本权限讲解 讲解umask的使用之前, 需要先讲解下文件的基本权限 linux文件权限 r w x 文件 可以查看文件内容 可以修改文件 可以把文件启动为一个运行的程序 目录 可以ls查看目录中的文件名...umask二进制的0:代表我不关心对应位的权限,你原来有权限就有权限,没有就没有, 我不影响你。...对于目录,直接使用777-umask即可,就得到了最终结果。 对于文件,先使用666-umask。 如果对应位上为偶数:最终权限就是这个偶数值。 如果上面的对应为上有奇数,就对应位+1。...5 umask的修改 umask 的修改分2中, 临时修改的和永久修改的 临时修改: [root@bogon test]# umask 023 [root@bogon test]# umask 0023
特殊权限除了常规的文件权限,Linux 还支持一些特殊权限设置,用于特定的用途。粘着位(Sticky Bit)粘着位是一种特殊权限,适用于目录。...当目录的粘着位被设置时,只有目录的所有者和文件的所有者才能删除或重命名目录中的文件。...要设置目录的粘着位,可以运行以下命令:chmod +t 目录设置用户或组的默认权限在 Linux 中,可以为用户或组设置默认权限,以确保新创建的文件或目录具有特定的权限。...要为用户设置默认权限,可以编辑用户的配置文件 .bashrc 或 .bash_profile,并添加以下行:umask 权限掩码其中,权限掩码是一个三位八进制数,用于设置默认权限。...最后,我们还了解了特殊权限,如粘着位和默认权限设置。掌握文件权限的概念和相关命令对于管理和保护 Linux 系统中的文件和目录至关重要。正确设置文件权限可以确保系统的安全性和稳定性。
通过umask查看 ? umask 第一个表示粘着位。 后面的3位表示文件或目录对应的umask对应的八进制值。 这个只是一个掩码。...比如:umask 是222,那么创建的文件的权限就是 666 - 222 = 444(r--r--r--) ?...Linux还为每个文件和目录存储了3个额外的信息位 设置用户ID(SUID):文件被用户使用时,程序会以文件属主的权限运行 设置组ID(SGID):对文件来说被使用时,以文件属组的权限运行。...粘着位:进程结束后文件还驻留在内存中。 SGID非常重要,启用SGID之后可以强制在一个共享目录下创建的新文件都属于该目录的属组,这个组也就成为了每个用户的属组。...要创建共享目录,使目录里的新文件都能沿用目录的属组,只需将该目录的SGID位置位。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167333.html原文链接:https://javaforall.cn
在linux系统中,我们创建一个新的文件或者目录的时候,这些新的文件或目录都会有默认的访问权限,umask命令与文件和目录的默认访问权限有关。...1.命令简介 umask 为 Shell 内建命令,用于设置创建文件时的权限掩码。 权限掩码由 3 个八进制数字组成,将 777(八进制)减掉权限掩码后,即可得到新建文件的默认权限。...2.命令格式 umask [-p] [-S] [MODE] 后不跟任何选项与参数单独执行 umask,则以八进制格式显示当前权限掩码。...umask 0022 (2)以字符形式显示新建文件的默认权限。...#设置权限掩码 umask 044 #查看权限掩码 umask 044
Linux权限管理是其一大特色,优秀的权限管理机制为Linux安全性提供了可靠的保障。...###一、用户权限管理: root用户是系统的超级用户,是Linux系统的CEO,它具有最高的管理权限,所以一般不用该用户登录系统进行日常的操作与维护,root可将某些权限赋予其他用户来管理系统的某些资源...第1位给出了该项的属性,即是文件还是目录,或者是链接文件等。...,第8、9、10位给出了其他用户权限。...umask:用于设定文件或目录刚创建是的权限。目录为755+umask值=777,文件644+umask值=777。 粘着位t:对于权限值为777的目录可设置粘着位t,即:drwxrwxrwt。
默认权限需要换算成字母再相减,所有建立文件之后的默认权限,为666减去umask的值 #比如 666-022=644 #文件默认最大权限666 umask值022 Linux中权限对目录的作用(注意对...mlocate.db数据库有r权限,所以普通用户可以使用locate # 命令查询mlocate.db数据库 # 命令结束,lamp用户的组身份返回lamp组 Sticky BIT 权限 描述:SBIT也叫粘着位权限目前只对目录有效...如果没有粘着位,因为普通用户拥有w权限,所以可以删除此目录下所有文件,包括其他用户建立的文件。...如果赋予了粘着位,除了root可以删除所有文件,普通用户就算有w权限也只能删除自己建立的文件,但是不能删除其他用户建立的文件 操作案例: #设置粘着位 chmod 1755 目录名 chmod o+t...目录名 #取消粘着位 chmod 0777 目录名 chmod o-t 目录名 实际案例: #示例1.普通用户无法删除自己创建的文件 $mkdir -p test/www # 此时test可以删除
mlocate.db数据库有r权限,所以普通用户可以使用locate # 命令查询mlocate.db数据库 # 命令结束,lamp用户的组身份返回lamp组 Sticky BIT 权限 描述:SBIT 也叫粘着位权限目前只对目录有效...如果没有sbit粘着位权限,因为普通用户拥有w权限,所以可以删除此目录下所有文件,包括其他用户建立的文件。...如果赋予了sbit粘着位,除了root可以删除所有文件,普通用户就算有w权限也只能删除自己建立的文件,但是不能删除其他用户建立的文件,例如 /tmp 目录的权限drwxrwxrwt。...操作案例: #设置粘着位 chmod 1755 目录名 chmod o+t 目录名 #取消粘着位 chmod 0777 目录名 chmod o-t 目录名 实际案例: # 1.普通用户无法删除自己创建的文件...test/www下的文件,但可以修改文件里面的内容 # rm: 无法删除"test.jsp": 不允许的操作 0x04 文件特殊属性设置 chattr 命令 - 配置文件隐藏权限 描述:设置SBIT粘着位权限后用户可以对其进行删除操作
ttys000 Aug 20 19:43 root 用户 ★root 权限,系统权限的一种,与 SYSTEM 权限可以理解成一个概念,但高于 Administrator 权限,root 是 Linux...更比如安卓操作系统中(基于 Linux 内核)获得 root 权限之后就意味着已经获得了手机的最高权限,这时候你可以对手机中的任何文件(包括系统文件)执行所有增、删、改、查的操作。...是通过umask 设置的。我们可以直接输入umask 查看默认权限的设置。 $ umask 0022 其中第一位代表了粘着位 sticky bit 的安全特性。...而后面三位表示文件或目录对应的umask 八进制值。也就是将三字符的权限的3组内容转化为八进制的三个数字。...这是因为umask 值只是一个掩码。它会屏蔽掉不想授予权限的文件。因此我们需要将umask 值从对象的全权限值中减掉。
umask值用于设置用户在创建文件时的默认权限,当我们在系统中创建目录或文件时,目录或文件所具有的默认权限就是由umask值决定的。 ...对于root用户,系统默认的umask值是0022;对于普通用户,系统默认的umask值是0002。执行umask命令可以查看当前用户的umask值。...命令可以修改umask值,比如将umask值设为0077。...umask命令只能临时修改umask值,系统重启之后umask将还原成默认值。...如果要永久修改umask值,需要修改/etc/profile文件或是修改/etc/bashrc文件,例如要将默认umask值设置为027,那么可以在文件中增加一行“umask 027”。
这篇教程教将指导 Linux 用户如何永久性地更改其系统的 Umask 值。特别建议全新安装的用户学习(想知道为什么的话,请移步下文) Umask 是什么?...上面的意思可以解释成任何基于 Linux 的操作系统为新建文件(包括文件夹)添加默认权限的规则。...rw-) 2 – 读和可执行 (r-x) 3 – 只读 (r--) 4 – 写和可执行 (-wx) 5 – 只写 (-w-) 6 – 仅可执行 (--x) 7 – 没有权限 (---) 在几乎所有的 Linux...发行版本中默认 Umask 值是 0022(或022),可以在终端模拟程序中输入 umask 命令来查看。...从现在开始,在你的 Linux 系统上新创建的文件或文件夹都会有准确设置的权限。但请注意已经存在的文件或文件夹的权限并不会因为上面的操作而改变。
前言 起源是一道题1:如果你的umask设置为022,缺省的你创建的文件权限为? 这让我回忆起被问过的另外一道题2: 777表示什么权限?...、写和执行 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行 第三组r–:不与文件所有者同组的其他用户的权限是读不能写和执行 也可用数字表示为:r=4,w=2,x=1 ,因为rwx代表三位二进制的话...数字权限说明 那么回到前面题2,777是三位八进制数,对应111111111,则代表三个组都可读可写可执行,我们可以这么用: chmod 755 abc //chmod 改变文件abc的权限为文件所有者可读可写可执行...,同组和其他组用户是可读可执行 umask说明 umask是权限掩码,代表默认不要的权限,它是基于文件最大默认值666,文件夹777的基础上取计算该用户新建对象的默认权限的。...比如,题1,那么创建文件的默认权限就是666-022=644,也就是-rw-r–r– umask是用来做什么的 默认情况下的umask值是022(可以用umask命令查看),此时你建立的文件默认权限是
上搜索"rwt linux",终于发现了问题,发现这种用法的名字是“文件的粘滞位(sticky)位“。...它的作用是:普通文件的sticky位会被linux内核忽略,但 目录的sticky位表示这个目录里的文件只能被owner和root删除,没错这就是问题本质,也和我的现象相吻合。...普通文件的sticky位会被linux内核忽略, 目录的sticky位表示这个目录里的文件只能被owner和root删除 粘着位(Sticky bit) 如果用户对目录有写权限,则可以删除其中的文件和子目录...# chmod 1770 xxx 举一个linux下的常见目录来做例子,也就是 /tmp 目录来说一下粘连位的作用。...当一个目录设置为粘着位时,它将发挥特殊的作用, 即当一个目录被设置为"粘着位"(用chmod a+t),则该目录下的文件只能由 一、超级管理员删除 二、该目录的所有者删除 三、该文件的所有者删除 也就是说
这就是umask干的事情。umask设置了用户创建文件的默认 权限,它与chmod的效果刚好相反,umask设置的是权限“补码”,而chmod设置的是文件权限码。
领取专属 10元无门槛券
手把手带您无忧上云