title: umask
date: 2019/10/29 08:44:24
toc: true
---
umask
umask
umask是shell终端或者说是你这个环境的读写执行的权限,你在自己的环境中执行open所附加的权限要和这个权限进行与操作,这个umask是4个8进制数值,最高位的这个是什么附加权限,暂时不去理会.
我们默认 创建文件的权限是-rw-rw-rw-
,创建目录的权限是drwxrwxrwx
先看root, 0022
中2
就是写权限,也就是去除写权限
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