如果您使用Linux作為主要操作系統(tǒng)或管理Linux服務器,當您嘗試創(chuàng)建或編輯文件并收到權(quán)限拒絕Permission deny錯誤時。
通常,可以通過設(shè)置正確的文件權(quán)限或所有權(quán)來解決與權(quán)限不足的錯誤。
Linux是一個多用戶系統(tǒng),并且通過文件許可權(quán),屬性和所有權(quán)來控制對文件的訪問。
這樣可以確保只有授權(quán)的用戶和進程才能訪問文件和目錄。需要了解文件權(quán)限的更多信息,請閱讀Linux Umask命令。
在本教程中,我們將說明如何遞歸更改文件和目錄的權(quán)限。
Chmod 命令遞歸修改權(quán)限
chmod命令允許您使用符號或數(shù)字模式修改文件的權(quán)限。要遞歸指定目錄所有文件,請使用chmod命令的-R/--recursive選項。
遞歸修改文件權(quán)限的語法形式是chmod -R MODE DIRECTORY,MODE是權(quán)限的模式,DIRECTORY是要設(shè)置權(quán)限的目錄或者文件。
例如命令chmod -R 755 /var/www/html將/var/www/html目錄的所有文件和子目錄的權(quán)限更改為755。
也可以使用符號模式指定權(quán)限chmod -R u=rwx,go=rx /var/www/html。只有root用戶或者文件所有者才能更改文件的權(quán)限。在遞歸修改文件的權(quán)限時,請格外小心。
sudo chmod -R 755 /var/www/html
sudo chmod -R u=rwx,go=rx /var/www/html
find 命令遞歸修改權(quán)限
通常,文件和目錄不應該具有相同的權(quán)限。大多數(shù)文件不需要執(zhí)行權(quán)限,而您必須在目錄設(shè)置可執(zhí)行權(quán)限才能切換目錄。
最常見的情況是將網(wǎng)站文件的權(quán)限遞歸更改為644,目錄的權(quán)限更改為755。在這種情況下,是使用find命令遞歸修改文件與目錄權(quán)限最適合用例。
我們可以使用find命令在/var/www/html搜索文件或目錄,并將找到的每個文件或目錄傳遞給chmod命令以設(shè)置權(quán)限。
在這個示例中,我們組合使用find與-exec選項,為找到的每個目錄與文件運行chmod命令。
如果你有大量的目錄或者文件,請使用xargs命令,通過一次傳遞多個文件與目錄來加快修改的速度。
命令find /var/www/html -type d -exec chmod 755 {} ; 命令將會修改目錄的權(quán)限,如果需要修改文件權(quán)限,請將-type d換成-type f,f表示文件。
find /var/www/html -type d -exec chmod 755 {} \\;
find /var/www/html -type d -exec chmod u=rwx,go=rx {} \\;
find /var/www/html -type d -print0 | xargs -0 chmod 755
結(jié)論
帶有-R選項的chmod命令允許您遞歸更改文件的權(quán)限。要基于文件的類型遞歸設(shè)置權(quán)限,請結(jié)合使用chmod和find命令。
-
Linux
+關(guān)注
關(guān)注
88文章
11581瀏覽量
217151 -
文件
+關(guān)注
關(guān)注
1文章
586瀏覽量
25869 -
命令
+關(guān)注
關(guān)注
5文章
745瀏覽量
23361
發(fā)布評論請先 登錄
Linux之文件權(quán)限
linux目錄操作命令有哪些?linux基礎(chǔ)入門
如何更改planahead啟動目錄?
Linux改變文件或目錄的訪問權(quán)限命令
用vim編輯文件,增加內(nèi)容不能成功的原因分析
淺談Linux權(quán)限管理的ACL權(quán)限
第1期Ubuntu入門篇:【12】Ubuntu文件權(quán)限管理
基本的Linux權(quán)限模型以及chmod 777含義
Linux系統(tǒng)如何修改文件屬性與權(quán)限
linux文件訪問權(quán)限怎么設(shè)置
Linux把目錄權(quán)限給指定用戶
Linux文件權(quán)限及Makefile
前端大倉monorepo權(quán)限設(shè)計思路和實現(xiàn)方案

如何遞歸更改文件和目錄的權(quán)限
評論