Linux權(quán)限控制之umask
Linux權(quán)限控制之 umaskLinux 中 umask的工作方式與 chmod令類(lèi)似,它也用于定義文件或目錄的權(quán)限。它們之間的區(qū)別在于 chmod用于改變已有文件或目錄的權(quán)限,而 umask用于定義新建文件或目錄的默認(rèn)權(quán)限。在 Red Hat LInux中,是無(wú)法配置新建文件自動(dòng)具有可執(zhí)行權(quán)限的,因?yàn)榫哂锌蓤?zhí)行權(quán)限的文件越少,黑客破解系統(tǒng)的可利用的文件就越少,以此提高安全性。
每次新建一個(gè)文件時(shí),文件的默認(rèn)權(quán)限是由 umask的值決定的。當(dāng)我們輸入 umask命令時(shí),它會(huì)輸出一個(gè) 4為的八進(jìn)制數(shù)值,如 0002。表示當(dāng)前用戶(hù)新建文件或目錄時(shí)的 umask值
如果 umask值的某位被設(shè)置,在新建文件或目錄時(shí)將禁用對(duì)應(yīng)的權(quán)限。
例如 umask的值為 0245意味著新建的目錄具有 (777-002)=0532八進(jìn)制權(quán)限,等效于下面字符串:
dr-x-wx-w-
如果 umask的值為 000,該用戶(hù)新建的文件具有 (666-000)=666八進(jìn)制權(quán)限,等效于下面字符串:
-rw-rw-rw-
Linux中 umask默認(rèn)值 在 /etc/profile中有這樣一段代碼:
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 002 else umask 022 fi
其含義是 UID大于 199的普通用戶(hù)掩蓋權(quán)限為 002,其他用戶(hù)的掩蓋權(quán)限是 022。
比如使用 UID為 0的 root用戶(hù)創(chuàng)建文件的默認(rèn)權(quán)限是 (666-022)=644,使用 root用戶(hù)創(chuàng)建目錄的默認(rèn)權(quán)限是 755( 777-022)。
使用 UID大于 199的普通用戶(hù)創(chuàng)建文件的默認(rèn)權(quán)限是 (666-002)=664,使用普通用戶(hù)創(chuàng)建目錄的默認(rèn)權(quán)限是 775( 777-002)。
umask默認(rèn)權(quán)限的修改方法 臨時(shí)修改 umask 權(quán)限值可以通過(guò)如下命令直接修改
[14:42:36 root@XksRain ~]#umask 0022 [14:42:38 root@XksRain ~]#umask 033 [15:04:58 root@XksRain ~]#umask 0033
永久修改 可在對(duì)應(yīng)用戶(hù)下的 .bashrc文件中添加:
umask 值 # 范例: # 設(shè)置 natasha 用戶(hù)創(chuàng)建的目錄權(quán)限默認(rèn)為 733,文件權(quán)限為 622,永久生效 echo "umask 044" >> /home/natasha/.bashrc
會(huì)員登錄
賬號(hào)登錄 還沒(méi)有賬號(hào)?立即注冊(cè)