Linux中umask值及隐藏权限
umask
umask :决定文件/目录的默认权限
- 执行 umask 命令可以查看 umask 的值
[root@xxlinux-02 ~]# umask
0022
-
新建目录的默认权限算法:777(rwxrwxrwx)-umask值022(----w--w-)=755(rwxr-wr-w),"-"减去任何都=“-”;
-
新建文件的默认权限算法:666(rw-rw-rw-)-umask值022(----w--w-)=644(rw-r--r--)
[root@xxlinux-02 ~]# umask
0022
[root@xxlinux-02 ~]# mkdir bbb
[root@xxlinux-02 ~]# ll
总用量 4
-rw-r--r--. 1 xx xx 0 6月 10 00:26 1.txt
drwxr-xr-x. 2 xx root 6 6月 10 00:34 abc
-rw-------. 1 root root 1422 5月 26 07:57 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 6月 10 01:00 bbb
[root@xxlinux-02 ~]# touch 2.txt
[root@xxlinux-02 ~]# ll
总用量 4
-rw-r--r--. 1 xx xx 0 6月 10 00:26 1.txt
-rw-r--r--. 1 root root 0 6月 10 01:05 2.txt
drwxr-xr-x. 2 xx root 6 6月 10 00:34 abc
-rw-------. 1 root root 1422 5月 26 07:57 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 6月 10 01:00 bbb
- umask+ 数字 可以更改umask的值
[root@xxlinux-02 ~]# umask
0022
[root@xxlinux-02 ~]# umask 002
[root@xxlinux-02 ~]# umask
0002
隐藏权限lsattr和chattr
chattr (修改文件/目录的特殊属性)
-
语法: chattr [+-=] 选项 文件/目录名
-
‘+-=’ : 分别为增加、减少、设定
-
i
: 增加后,使文件不能被删除、重命名、设定链接、写入、新增数据
[root@localhost ~]# chattr +i aaa
[root@localhost ~]# touch aaa/1.txt
touch: 无法创建"aaa/1.txt": 权限不够
[root@localhost ~]# chattr -i aaa
[root@localhost ~]# touch aaa/1.txt
[root@localhost ~]# chattr +i aaa
[root@localhost ~]# rm -f aaa/1.txt
rm: 无法删除"aaa/1.txt": 权限不够
- ‘a’ : 增加该属性后,只能追加不能删除(非root用户不能设定该属性)
[root@localhost ~]# chattr +a aaa/1.txt
[root@localhost ~]# head -n 2 /etc/passwd > aaa/1.txt
-bash: aaa/1.txt: 不允许的操作
[root@localhost ~]# head -n 2 /etc/passwd >> aaa/1.txt
[root@localhost ~]# cat aaa/1.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@localhost ~]# rm -f aaa/1.txt
rm: 无法删除"aaa/1.txt": 不允许的操作
-
其他选项:
‘A’ : 增加该属性后,文件或目录的atime将不可被修改;
‘S’ : 增加该属性后,会将数据同步写入磁盘中
‘c’ : 自动压缩该文件,读取时会自动解压
lsattr 读取文件或者目录的特殊权限
-
语法为 lsattr [-aR] [文件/目录名]
-
‘-a’ : 类似与ls 的-a 选项,即连同隐藏文件一同列出
-
‘-R’ : 连同子目录的数据一同列出
[root@localhost ~]# lsattr aaa
-----a---------- aaa/1.txt
[root@localhost ~]# lsattr -aR aaa
---------------- aaa/.
---------------- aaa/..
-----a---------- aaa/1.txt