簡體   English   中英

如何在Linux中的所有子目錄上強制CURRENT目錄權限?

[英]How to force CURRENT directory permissions on all sub-directories in Linux?

我經常發現自己處於以root身份登錄shell的情況(我已經被告知這是一個不好的做法)並將新文件復制到apache提供的某個目錄中。

由於我以root身份登錄,因此新文件將root設置為owner,並且具有與已存在的文件不同的權限,並且我需要更改Apache的權限才能訪問這些文件。 我是手動做的。

我正在研究一種更好的方法。 我想知道是否有辦法以某種方式將單個命令應用於當前文件夾對其所有子文件夾和文件的權限。

Windows具有這樣的功能,您可以在其中“重置所有文件和文件夾權限”到父文件夾的權限。

要獲取當前目錄的權限,您可以使用

stat -c %a .

要遞歸設置權限,請使用

chomd -R

放在一起,它給出了

chmod -R `stat -c %a .` .

或者,如果支持,您可以使用chmod--reference選項。

chmod -R --reference=. .

@ choroba的回答為+ 1,但是......你確定這是你想做的嗎?

來自http://en.wikipedia.org/wiki/File_system_permissions ...

權限
類Unix系統實現了適用於每個類的三個特定權限:

  • 讀取權限授予讀取文件的能力。 為目錄設置時,此權限授予讀取目錄中文件名稱的權限,但不能查找有關它們的任何進一步信息,如內容,文件類型,大小,所有權,權限。
  • 寫入權限授予修改文件的能力。 為目錄設置時,此權限授予修改目錄中條目的權限。 這包括創建文件,刪除文件和重命名文件。
  • 執行權限授予執行文件的能力。 必須為可執行程序(包括shell腳本)設置此權限,以允許操作系統運行它們。 為目錄設置時,此權限授予訪問文件內容和元信息(如果其名稱已知)的權限,但不允許訪問目錄中的列表文件,除非同時設置了read。

在目錄而不是文件上設置權限的效果是“最常被誤解的文件權限問題之一”。

未設置權限時,將拒絕相應的權限。 與基於ACL的系統不同,類Unix系統的權限不會被繼承。 在目錄中創建的文件不一定具有與該目錄相同的權限。

(重點補充)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM