Linux
無法使用 dir 權限 666 寫入,但可以使用 777 寫入
我使用 Kali 作為 root 使用者。我確實在一個文件夾(由 root 創建和擁有)中設置了一個 atftp 伺服器,並對該文件夾授予了 666 權限。但我注意到使用者在上傳到 atftp 時出現權限被拒絕錯誤。FTP伺服器也是如此。因此,為了執行一些測試,我創建了一個臨時目錄,為其分配了 666 權限,嘗試使用非特權使用者創建文件,但我得到了“權限被拒絕”。然後我將權限更改為 777 並重複相同的過程。這個時間文件被創建了。
案例一:666權限
root@kali:~/temp# chmod 666 . root@kali:~/temp# ls -la total 8 drw-rw-rw- 2 root root 4096 May 7 00:32 . drwxr-xr-x 21 root root 4096 May 7 00:32 .. root@kali:~/temp# su temp $ touch a touch: cannot touch 'a': Permission denied
案例2:777權限
root@kali:~/temp# chmod 777 . root@kali:~/temp# ls -la total 8 drwxrwxrwx 2 root root 4096 May 7 00:32 . drwxr-xr-x 21 root root 4096 May 7 00:32 .. root@kali:~/temp# su temp $ touch a $ ls -la total 8 drwxrwxrwx 2 root root 4096 May 7 00:32 . drwxr-xr-x 21 root root 4096 May 7 00:32 .. -rw-r--r-- 1 temp temp 0 May 7 00:32 a $
x
即使文件夾在這兩種情況下都有,為什麼添加額外的權限也有助於寫入文件w
?
在目錄上執行位授予進入它的權限,請參閱此答案
執行位 (x) 允許受影響的使用者進入目錄,並訪問裡面的文件和目錄
666 沒有執行位,而 777 有。