您正在嘗試修復Web服務器的權限問題,并在Internet上找到了答案,說您需要遞歸修改Web目錄的權限。
在執(zhí)行此操作之前,請確保您了解chmod -R 777
意味著什么以及為什么永遠不要將權限設置為777。本教程介紹基本的Linux權限模型以及chmod 777含義。
在Linux中,對文件的訪問由文件許可權,屬性和所有權控制。
你需要了解Linux文件系統(tǒng)權限模型,才可以對文件和目錄的訪問限制為僅授權用戶和進程訪問,從而使系統(tǒng)更安全。
每個文件均由一個指定用戶和一個組擁有,并為三種不同類別的用戶分配權限。包括文件 所有者 。 組成員 。 其他人 。
有三種文件權限類型適用于每個用戶類別,并允許您指定允許哪些用戶讀取文件,寫入文件或執(zhí)行文件。相同的權限屬性適用于具有不同含義的文件和目錄。
讀取權限表示文件可讀。例如設置讀取權限后,用戶可以在文本編輯器中打開文件??梢圆榭茨夸浀膬热?。用戶可以使用ls
命令列出目錄中的文件。
寫權限表示可以更改或修改文件??梢愿哪夸浀膬热?。用戶可創(chuàng)建新文件,刪除文件,移動文件,重命名文件。
執(zhí)行權限表示可以執(zhí)行文件??梢允褂?code>cd命令切換目錄。可以使用ls
命令查看文件權限。
ls -l filename.txt
-rw-r--r-- 12 myfreax users 12.0K Apr 8 20:51 filename.txt
|[-][-][-]- [------] [---]
| | | | | | |
| | | | | | +-----------> 7. Group
| | | | | +-------------------> 6. Owner
| | | | +--------------------------> 5. Alternate Access Method
| | | +----------------------------> 4. Others Permissions
| | +-------------------------------> 3. Group Permissions
| +----------------------------------> 2. Owner Permissions
+------------------------------------> 1. File Type
第一個字符顯示文件類型。它可以是常規(guī)文件-
,目錄d
,符號鏈接l
或任何其他特殊類型的文件。
接下來的9個字符代表文件權限,三個三元組,每個三元組由三個字符組成。第一個三元組顯示所有者的權限,第二個三元組顯示組的權限,最后一個三元組顯示其它人的權限。
權限數字模式
文件權限可以用數字或符號格式表示。在本教程中,我們將重點介紹數字模式。數字的權限模式可以由三到四位數字組成,范圍從0到7。
使用3位數字時,第一位代表文件所有者的權限,第二位代表文件組的權限,最后一位代表其他用戶的權限。
寫入,讀取和執(zhí)行權限的值分別是。r
讀取= 4。w
寫入= 2。x
執(zhí)行= 1。無權限= 0。指定用戶類別的數字權限是該類別的數字值的和。
0(0 + 0 + 0)
–無權限。1(0 + 0 + 1)
–僅執(zhí)行權限。2(0 + 2 + 0 )
–僅寫權限。
3(0 + 2 + 1)
–寫和執(zhí)行權限。4(4 + 0 + 0)
–僅讀權限。5(4 + 0 + 1)
–讀取和執(zhí)行權限。
6(4 + 2 + 0)
–讀取和寫入權限。7(4 + 2 + 1)
– 讀取,寫入和執(zhí)行權限。
例如,如果權限值設置為750,則意味著文件的所有者擁有讀取,寫入和執(zhí)行許可,文件的組具有讀取和執(zhí)行權限,而其他用戶則沒有權限。
相當于所有者:rwx = 4 + 2 + 1 = 7。組:rx = 4 + 0 + 1 = 5。其他:rx = 0 + 0 + 0 = 0。
當使用4位數字時,第一位數字含義分別是setuid = 4,setgid = 2,sticky = 1,無變化= 0。
接下來的三位數與使用三位數數字的含義相同。如果第一個數字為0,則可以省略,并且該模式可以用3個數字表示。數字模式0755
與755
相同。
要以數字模式查看文件的權限,請使用stat
命令。
stat -c "%a" filename
644
chmod 777
設置文件或目錄的777權限意味著所有用戶都可以讀取,寫入和執(zhí)行文件或目錄,并且可能會帶來巨大的安全風險。
例如,如果將/var/www
目錄的所有文件和子目錄的權限遞歸更改為777
,則系統(tǒng)上的任何用戶都可以在目錄中創(chuàng)建,刪除或修改文件。
如果您的Web服務器遇到權限問題,請勿以遞歸方式將權限設置為777
,建議將文件的權限設置為644
,將目錄的權限設置為755
,而不是將權限遞歸設置為777
。。
你可以使用chown
命令更改文件所有權,并使用chmod
命令更改權限。
假設您的web服務器以myfreax用戶運行的PHP應用程序。要設置正確的權限,請運行以下命令。
只有root用戶,文件所有者才能更改文件的權限。使用chmod
時要格外小心,尤其是在遞歸更改權限時。
chown -R myfreax: /var/www
find /var/www -type d -exec chmod 755 {} \\;
find /var/www -type f -exec chmod 644 {} \\;
結論
如果要管理Linux系統(tǒng),了解Linux權限的工作方式至關重要。絕對不要設置777權限文件和目錄權限。777表示任何人都可以使用這些文件做任何事情。
-
Web
+關注
關注
2文章
1287瀏覽量
71387 -
Linux
+關注
關注
87文章
11509瀏覽量
213724 -
服務器
+關注
關注
13文章
9792瀏覽量
87931
發(fā)布評論請先 登錄
iTOP-4412關閉調試串口以及修改串口權限
nanopi2權限問題的解決
LINUX修改文件權限
Linux文件權限如何查看
linux文件權限的相關資料下載
介紹9種命令方法輸入chmod 777 ip.sh
淺談Linux權限管理的ACL權限
Linux進程權限的分析說明
Linux把目錄權限給指定用戶
搞懂Linux權限管理,提升系統(tǒng)安全性與穩(wěn)定性

Linux權限管理基礎入門

評論