Umask
目錄和文件的不同 Umask
如何為目錄和文件設置不同的 umask?
我需要目錄
umask 003
和文件umask 117
umask
是全球性的bash
。您可以做的一件事是創建一個mkdir
包裝器(一個腳本,您為其命名),它會在執行後更改遮罩。#!/bin/bash umask 0701 ; /path/to/real/mkdir $1 ; umask 0604
這是在這裡回答的:
請記住:對於目錄,基本權限是 (
rwxrwxrwx
)0777
,而對於文件,它們是0666
,這意味著,即使 umask 允許,您也不會在 shell 內獲得創建文件的執行權限。這樣做顯然是為了提高新文件創建的安全性。例子:
[admin@host test]$ pwd /home/admin/test [admin@host test]$ umask 0002 [admin@host test]$ mkdir test [admin@host test]$ touch test_file [admin@host test]$ ls -l total 4 drwxrwxr-x 2 admin admin 4096 Jan 13 14:53 test -rw-rw-r-- 1 admin admin 0 Jan 13 14:53 test_file
umask
Unix 規範沒有說明這個文件權限數學細節。由外殼開發人員(和作業系統製造商)決定。