当进入Linux系统后新创建的文件或者文件夹总是会有一个默认的权限,那么这个权限是如何设置的呢?

umask就是设置文件与目录的默认权限

1. 查看umask

  • 直接查看,
[root@centos6 ~]# umask
0022
  • 以模式方式显示
[root@centos6 app]# umask -S
u=rwx,g=rx,o=rx
  • 输出可被调用,重定向
[root@centos6 app]# umask -p
umask 0022

0022表示的权限是rwxr-xr-x,第一位的0是特殊权限,这里先不做考虑。

2. 文件与目录权限

  • 文件:新文件对于所有用户来说具有执行权限是很可怕的事情。所以对于文件来说默认最大权限就是666 -rw-rw-rw-
  • 目录:对于目录来说,x权限意味着是否能进入到目录中。如果一个新建的目录无x权限就进入不了这个目录。那目录就没有存在的意义。所以目录的最大权限是777 drwxrwxrwx

3. 默认权限的计算

  • 文件:

    最大权限减去umask码等于默认权限,结果为奇数,则奇数位+1

  • 结果为偶数

    666-022=644,转换为权限 rw- r- - r - -

  • 如果mask=135

    666-135=431,奇数+1为442,转换为权限r- -r- - - -x

  • 目录:

    最大权限减去umask码等于默认权限

  • 777-022=755 转换为权限 rwxr-xr-x

4. 查看权限

创建文件与目录,查看其权限。

[root@centos6 app]# mkdir dir
[root@centos6 app]# touch file
[root@centos6 app]# ls -al
-rw-r--r--. 1 root root 292 Jul 24 21:05 file
drwxr-xr-x. 2 root root 4096 Jul 24 21:05 dir

5. umask的设置方法

  • 直接设置,只是临时生效,用户注销后恢复
[root@centos6 app]# umask 0002
  • 对指定用户永久生效
[root@centos6 app]# vim ~/.bashrc
umask 0002
  • 对所有用户永久生效
[root@centos6 app]# vim  /etc/.bashrc
umask 0002

6. 总结

  • 一般root的umask为022
  • 一般普通用户的umask为002
  • umask越小权限越大

文件的默认权限UMASK的更多相关文章

  1. Linux文件的默认权限:umask

    1. 文件的默认权限 Linux下当我们新建一个文件和目录时,该文件和目录的默认权限是什么? 通过umask命令来查看: $ umask0002 $ umask -Su=rwx,g=rwx,o=rx ...

  2. 文件的默认权限:umask

    1. 文件的默认权限 linux下当我们新建一个文件和文件夹时,该文件和文件夹的默认权限是什么? 通过umask命令来查看: $ umask 0002 $ umask -S u=rwx,g=rwx,o ...

  3. Linux—用户新建目录和文件的默认权限设置:umask详解

    关注微信公众号:CodingTechWork,一起学习进步. 引言   我们有没有思考过一个问题,在登录Linux系统后,我们创建的目录或者文件的权限,为什么每次创建都是统一的?我们做以下实验:新建一 ...

  4. 默认权限umask、文件系统权限、特殊权限

    第1章 权限相关错误 1.1 普通用户 ls /root/ /root  属于root 普通用户没有任何权限,所以无法查看 [oldboy@znix ~]$ ls /root/ ls: cannot ...

  5. 默认权限umask

    什么是umask? 当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情.umask设置了用户创建文件的默认 权限,它与chmod的效果刚好相反,um ...

  6. 文件默认权限umask掩码

    umask命令 作用:用于显示.设置文件的缺省权限 格式:umask   [-S] -S表示以rwx形式显示新建文件缺省权限 系统的默认掩码是0022 文件创建时的默认权限 = 0666 - umas ...

  7. 如何设置UNIX/Linux中新创建目录或文件的默认权限

    在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,那么这些默认权限是怎么控制的呢? 答案是"umask"权限掩 ...

  8. Linux之文件(目录)默认权限、特殊权限与隐藏权限

    文件默认权限 从Linux之用户组.文件权限详解了解到文件与目录的基本权限管理,文件在创建时如果不指定具体的权限,那么系统会给它分配一个默认的权限,这个默认权限就是umask. vbird@Ubunt ...

  9. Linux 设置新创建目录或文件的默认权限

    一.简介 在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,这些默认权限是通过"umask"权限掩码控制的.一 ...

随机推荐

  1. gulp - less 在node.js上的安装和使用

    推荐个一个网站 http://www.ydcss.com/ 很详细的入门gulp 官网 http://www.gulpjs.com.cn/docs/getting-started/ 下面 是我的个人总 ...

  2. Maven基本安装与配置

    百度Maven,进入Maven官网,点击Download 点击下载Binary zip包,下载到电脑上相应的位置即可. 找到下载文件,进行解压,解压到相应的文件夹下面,并且记住路径. 打开系统-> ...

  3. css如何让div和页面等高?

    我们都知道,只要是block状态的标签,宽度和父级等宽,或者设置宽度100%也可以等宽,但设置高度100%是不管用的,那么如何让标签和页面等高呢,除了用js去动态计算设置高度值,用css也可以 只要将 ...

  4. win7下 mysql安装(mysql-5.7.18-winx64.zip)

    cmd到mysql/bin目录下 应该是先mysqld --initialize然后mysqld -install最后net start mysql

  5. div+css的属性

    div+css的属性 gCascading Style Sheet 层叠式样式表 ==> 层叠样式表 Internal Style Sheet 内部样式表 External Style Shee ...

  6. Function.prototyoe.call.apply

    刚刚在一个群里看到有人问 Function.prototype.call.apply(obj, args) 如何理解,觉得挺有意思的.刚开始被惯性思维干扰了,一直都是 call 和 apply 分开用 ...

  7. Realm的简单使用

    Realm个人理解: 它主要是一套移动端数据库框架,将对数据库表的操作转换为对对象的操作,如果是学过Java ORM框架的同学使用Realm起来应该上手比较快一点.而且据我所知Realm不仅支持Obj ...

  8. Ubuntu上使用Web QQ

      Linux下的pidgin已经不支持QQ了,只能用Web QQ了.Firefox应用市场(Firefox Marketplace)中有一款QQ的Web应用,比你打开浏览器输入网址用得稍微方便点.不 ...

  9. 基于Angularjs实现图片上传和下载

    根据ng-file-uoload实现文件上传和下载实现 网上down下来ng-file-uoload.js,在项目中记得引入服务哦. 示例代码: FileUploaderCtrl.$inject = ...

  10. Hibernate执行原生态sql语句

    @Override public Integer update(String id, String username){ String sql = "update Team_CheLiang ...