umask


title: umask
date: 2019/10/29 08:44:24
toc: true

umask

umask

umask是shell终端或者说是你这个环境的读写执行的权限,你在自己的环境中执行open所附加的权限要和这个权限进行与操作,这个umask是4个8进制数值,最高位的这个是什么附加权限,暂时不去理会.

我们默认 创建文件的权限是-rw-rw-rw-,创建目录的权限是drwxrwxrwx

先看root, 00222就是写权限,也就是去除写权限

root@100ask:/home/book/work/1_write# umask
0022
root@100ask:/home/book/work/1_write# touch a
root@100ask:/home/book/work/1_write# mkdir b
root@100ask:/home/book/work/1_write# ls -l a
-rw-r--r-- 1 root root 0 10月 28 22:50 a
drwxr-xr-x 2 root root 4096 10月 28 22:51 b

再看普通用户,这里就是去除other的写权限

book@100ask:1_write$ umask
0002
book@100ask:1_write$ touch a
book@100ask:1_write$ mkdir b
book@100ask:1_write$ ls -l
total 20
-rw-rw-r-- 1 book book    0 10月 28 22:53 a
drwxrwxr-x 2 book book 4096 10月 28 22:53 b

修改

修改这个掩码的umask权限,就可以确认默认的文件权限

book@100ask:1_write$ umask -S 0000
u=rwx,g=rwx,o=rwx
book@100ask:1_write$ touch a
book@100ask:1_write$ mkdir b
book@100ask:1_write$ ls -l
total 20
-rw-rw-rw- 1 book book    0 10月 28 22:55 a
drwxrwxrwx 2 book book 4096 10月 28 22:55 b

永久修改

~/.bashrc最后加一行umask 0000,,这样进入终端都生效了

附加权限(TODO)

https://blog.csdn.net/derkampf/article/details/52080396

原文地址:https://www.cnblogs.com/zongzi10010/p/11756694.html