Linux umask 文件默认权限
一、umask是什么
登錄系統以后創建的一個文件會有一個默認權限。umask的作用就是設置用戶創建文件或者目錄的默認權限。umask設置的是權限的補碼,我們常用的chmod設置的是文件權限碼。一般在/etc/profile、home/.profile設置umask值
二、umask的作用
umask的作用是用來控制默認權限的。首先了解一下基本權限
2.1Linux文件權限
| 文件 | 可以查看文件內容(可讀) | 可以修改文件(可寫) | 可以吧文件啟動為一個運行的程序(可執行) |
| 目錄 | 可以用ls查看目錄中的文件名 | 可以在目錄中創建或者刪除文件(需要w權限配合) | 可以使用cd進入目錄,ls-l可以顯示目錄內文件的元數據的信息 |
2.2文件的最大權限
目錄
目錄的最大權限為777,創建目錄后目錄的默認權限就等于最大權限減umask 如:777-022=755;
高位八進制數表示所有者的權限,也就是文件創建者,中位八進制數表示所在組的權限,低位八進制表示其他用戶的權限。
文件
文件的最大權限為666,創建文件后文件的默認權限就等于最大權限減umask 如:666-022=644;
如果對應位上為偶數:最終權限就是這個偶數值。
如果上面的對應為上有奇數,就對應位+1。
上面的這個方法計算是非常方便的, 為何得到奇數要+1呢。
文件的最大權限是666,都是偶數,你得到奇數,說明你的umask有奇數啊,讀為4,寫為2,都是偶數,說明你有執行權限的。
就按照上面的umask=023為例,在計算其他用戶權限的時候6-3=3 ,6是讀寫,3是寫和執行,其實應該是讀寫權限減去讀權限的得到寫權限的,相當于我們多減去了一個執行權限。所以結果加1。
三、umask的修改
umask的修改有兩種:分為 臨時修改 和永久修改
臨時修改: 輸入命令:umask 023
永久修改:
可以編輯以下文件 添加umask=022。
交互式登陸的配置生效:
/etc/profile < /etc/profile.d/.sh < ~/.bash_profile < ~/.bashrc </etc/bashrc 【/etc/bashrc的配置最有效 可以覆蓋前面的配置】
非交互登陸的配置生效:
~/.bashrc < /etc/bashrc < /etc/profile.d/.sh
四、常用umask
umask 002
umask 022
總結
以上是生活随笔為你收集整理的Linux umask 文件默认权限的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 210108阶段三进程管理,多进程编程
- 下一篇: 210120 阶段三 fork与阻塞函数