[英]How to automatically set permissions of future/new files in Ubuntu?
目前,我做sudo chown -R ubuntu:ubuntu /home/ubuntu/<folder>
。
但是,當我運行一個Python腳本創建一個名為testoutput
的文件夾testoutput
其寫入文件時,該文件夾是使用root
權限創建的,因此在將文件寫入文件夾時會獲得permission denied
錯誤。
如何確保在進行chown
時,即使是該范圍內的新文件也能獲得相同的權限? 有沒有辦法確保在Ubuntu中?
新文件夾i的權限:
drwxr-xr-x 2 root root
而現有文件夾的權限是:
drwxrwxr-x 2 ubuntu ubuntu
在幾乎所有操作系統中,新文件的所有者由創建文件的用戶上下文確定。 也就是說,你最有可能以root
身份運行repsective python腳本。 如果你之后以遞歸方式chown
基本目錄testoutput
- 當然是root
- 你應該沒問題。 如果您不希望root
成為初始所有者,請考慮不首先以root
身份運行相應的腳本,而是將其作為所需的所有者。 或者看看ACL 。
這由umask
設置控制,默認設置在此處
root@brad:~# grep ^UMASK /etc/login.defs
UMASK 022
root@brad:~#
(雖然用於遠程登錄等的pam和其他服務有pp覆蓋)。
有了這個,我們有:
root@brad:~# umask # four digits because of suid bit
0022
root@brad:~# mkdir tempDir1
root@brad:~# ls -ld tempDir1
drwxr-xr-x 2 root root 4096 Aug 17 07:22 tempDir1
root@brad:~# umask 002
root@brad:~# umask
0002
root@brad:~# mkdir tempDir2
root@brad:~# ls -ld tempDir?
drwxr-xr-x 2 root root 4096 Aug 17 07:22 tempDir1
drwxrwxr-x 2 root root 4096 Aug 17 07:22 tempDir2
root@brad:~#
並且您看到如何將中間數字從022更改為002使得組權限可寫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.