可以使用以下方式直接重設想要的權限:
使用 find 來執行 chmod:
find Apache2/ -type d -exec chmod 770 {} \; <= /www 內所有目錄
find Apache2/ -type f -exec chmod 750 {} \; <= /www 內所有檔案
find 的 -type 參數可以指定檔案的類型,常用的選項有:
d:目錄。
p:具名的 pipe(FIFO)。
f:一般的檔案。
l:連結檔,如果與 -L 或 -follow 參數同時使用時,就只會搜尋到有問題的連結檔,如果想要與 -L 同時使用,請改用 -xtype。
s:socket 檔案。
其它用的到的 find 指令
//找出當下目錄權限為 777 的所有檔案
find . -type f -perm 0770
//找出當下目錄權限不是 777 的所有檔案
find . -type f ! -perm 0770雜記
目前遇到的狀況是在 htdocs 目錄內新增的檔案或目錄的權限會變成 ---rwx--- 的權限異常狀況。這也是為什麼會有這篇的存在。
發生原因不明,查看 umask 的預設設定皆正常,後來乾脆將 htdocs 目錄刪除,再利用 ssh ftp 帳號登入後,用這個身份新增目錄(e.g. mkdir htdocs),這時在這個特定的 htdocs 目錄內所新增的權限就是預設給的權限。
相關參考: