学习啦 > 学习电脑 > 操作系统 > Linux教程 > linux umask命令详解

linux umask命令详解

时间: 佳洲1085 分享

linux umask命令详解

  umask命令是linux系统下的一个命令,那么它的具体用法是怎样的呢?下面由学习啦小编为大家整理了linux umask命令的相关知识,希望对大家有帮助!

  linux umask命令功能说明

  指定在建立文件时预设的权限掩码。

  linux umask命令语法

  umask [-S][权限掩码]

  补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。

  linux umask命令参数

  -S  以文字的方式来表示权限掩码。

  linux umask命令用途

  预设权限(权限掩码)

  我们知道, 当我们建立一个目录或档案时,它都会带一个默认的权限:

  若使用者建立为 '档案' 则预设 '没有可执行 ( x ) 项目', 亦即只有 rw 这两个项目, 用数字表示就是666或字母

  –rw-rw-rw-

  若使用者建立为 '目录', 则由于 x 与是否可以进入此目录有关, 因此预设为所有权限均开放, 亦即为777 或字母

  d-rwx-rwx-rwx

  umask就与这个默认权限有关. 那么 umask 是在搞什么呢? umask 就是指定 '目前用户在建立档案或目录时候的权限默认值'.

  linux umask命令用法

  1. 查看

  我们可以这样查看umask默认值,

  # 查看

  $umask         # 数字形式

  002           # 有的机器可能会显现4个数字,我们一般用后三个

  $umask -S       # 字符形式

  u=rwx,g=rwx,o=rx

  要注意的是,umask 的分数指的是该默认值需要减掉的权限。

  因此,上面的002实际上是去掉了其他用户的写权限,对于档案来说也就是, 实际权限是664,即:

  -rw-rw-r-

  对于目录来说, 实际是773, 即:

  -rwx-rwx-rx

  2. 设置

  umask 002

  umask后面接3个数字就可以设定了. 若要长期修改umask的值, 可以把它写进/etc/profile或~/.profile或~/.bash_profile中.

  例题

  假设你的 umask 为 003, 请问该 umask 情况下, 建立的档案和目录权限为?

  答: umask 为 003, 所以拿掉的权限为 --------w, 因此:

  档案: (-rw-rw-r-) - (--------wx) = -rw-rw-r--

  目录: (drwxrwxrwx) - (--------wx) = drwxrwxr--

  以上面例题来看, 如果使用默认属性相加减, 则档案变成, 666-003=663, 亦即是 -rw-rw--wx , 这可是完全不对的! 想想看, 原本档案就已经去除 x 的默认属性了, 怎么可能突然间冒出来了? 所以, 这个地方得要特别小心.

3584368