答案1
我通常會使用以下內容:
find . -type f -print0 | xargs -0 sudo chmod 440
find . -type d -print0 | xargs -0 sudo chmod 555
但是,這沒有考慮可執行檔。我正在考慮對文件做這樣的事情:
find . -type f -print0 | xargs -0 sudo chmod ug+r ug-w o-rwx
但這仍然是兩個命令,我不確定這是否是最好的方法。也許有人有更好的建議。
答案2
好吧,只是不要對目錄及其中的文件設定相同的權限:
$ chmod g+rx directory/
$ chmod g= directory/*
在這裡,群組成員可以進入並瀏覽該目錄,但他們將無法讀取其中的檔案。
編輯:關於你的新標題,我建議:
$ chmod a+rx directory/
$ chmod u=rwX,g=rX,o= *
答案3
對於已經建立的目錄和檔案:
尋找/start_directory -type d -exec chmod 755 {} \;
尋找/start_directory -type f -exec chmod 660 {} \;
如果您的用戶應該能夠建立新文件和/或子目錄,請提供更多詳細信息,因為解決方案取決於特定要求。