linux中umask值的說明與設置


1、umask說明
在Linux系統中umask值代表的是我們創建新文件/目錄的默認權限設置,系統root賬號默認的umask的值為0022 普通賬號的umask的值為0002.2、查看umask值
使用命令umask命令可以查看當前帳號umask的值

[root@RedHat8-2 ~]# umask
0022
[root@RedHat8-2 ~]# umask -S
u=rwx,g=rx,o=rx

[root@RedHat8-2 ~]# su - stu10
Last login: Fri Jun 11 14:05:19 CST 2021 on pts/0
[stu10@RedHat8-2 ~]$ umask
0002
[stu10@RedHat8-2 ~]$ umask -S
u=rwx,g=rwx,o=rx

可以看到umask值有四位數字,第一位數字代表的是特殊權限忽略,后三位數字為我們看到的文件/目錄的默認權限。
賬號能有的目錄最大權限為777,文件能有的最大權限為666,我們根據此權限對應umask的值就能夠計算出該賬號的默認文件/目錄權限。

root:目錄 777-022=755
root:文件 666-022=644
stu10:目錄 777-002=775
stu10: 文件 666-002=664

權限對應數字
rwx rwx rwx
第一部分(user) 讀:  r--    4
第二部分(group)寫:  -w-    2
第三部分(其它) 執行: --x    1

3、驗證測試

root測試:

[root@RedHat8-2 ~]# whoami
root
[root@RedHat8-2 ~]# umask 
0022
[root@RedHat8-2 ~]# mkdir umask
[root@RedHat8-2 ~]# cd umask/
[root@RedHat8-2 umask]# mkdir dir
[root@RedHat8-2 umask]# touch file
[root@RedHat8-2 umask]# ll
total 0
drwxr-xr-x 2 root root 6 Jun 11 14:27 dir
-rw-r--r-- 1 root root 0 Jun 11 14:27 file

root新建默認目錄權限為:rwxr-xr-x=755 / 777-022=755
root新建默認文件權限為:rw-r--r--=644 / 666-022=644

普通賬號測試:

[stu10@RedHat8-2 ~]$ whoami
stu10
[stu10@RedHat8-2 ~]$ umask
0002
[stu10@RedHat8-2 ~]$ ls
[stu10@RedHat8-2 ~]$ mkdir stu-dir
[stu10@RedHat8-2 ~]$ touch stu-file
[stu10@RedHat8-2 ~]$ ll
total 0
drwxrwxr-x 2 stu10 stu10 6 Jun 11 15:14 stu-dir
-rw-rw-r-- 1 stu10 stu10 0 Jun 11 15:14 stu-file

stu10普通賬號新建默認目錄權限為:rwxrwxr-x=775 / 777-002=775
stu10普通賬號新建默認文件權限為:rw-rw-r--=664 / 666-002=664

4、修改umask值測試
我們將umask的值設置成0027進行測試

[root@RedHat8-2 ~]# umask
0022
[root@RedHat8-2 ~]# umask 0027
[root@RedHat8-2 ~]# umask
0027
[root@RedHat8-2 ~]# umask -S
u=rwx,g=rx,o=
[root@RedHat8-2 ~]# cd umask/
[root@RedHat8-2 umask]# mkdir dir-027
[root@RedHat8-2 umask]# touch file-027
[root@RedHat8-2 umask]# ll
total 0
drwxr-xr-x 2 root root 6 Jun 11 14:27 dir
drwxr-x--- 2 root root 6 Jun 11 15:32 dir-027
-rw-r--r-- 1 root root 0 Jun 11 14:27 file
-rw-r----- 1 root root 0 Jun 11 15:33 file-027

我們可以對比兩次測試權限的變化
此時root新建默認目錄權限為:rwxr-x---=750 / 777-027=750
此時root新建默認文件權限為:rw-r-----=640 / 666-027=640

注:
但是這種方式並不能永久更改umask的值,只是將當前的shell臨時更改
如果要永久更改umask的值,可以將命令添加至/etc/profile或/etc/bashrc文件中
對已存在文件/目錄無效,只會對新建生效。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM