Linux
儘管權限正確,但無法進入目錄
我有一個需要輸入的目錄(
nobody
由於它是 Docker 綁定掛載的一部分,並結合了使用者命名空間重新映射,因此歸所有者所有。)。這是它的相關ls -la
輸出:drwxrwxr-x 2 nobody nobody 4096 May 26 14:42 Directory
執行 as
root
,雖然我不屬於目錄的所有者或組,但該目錄是世界可讀和可執行的,所以我應該能夠進入它。但是,在執行時cd Directory
,它會失敗:bash: cd: Directory: Permission denied
我認為您在解決問題後創建了問題和答案。
請注意,GNU
ls
長列表-l
將通過在文件模式位列表中附加一個字元來顯示其他訪問方法(例如訪問控制列表)是否適用於文件。而不是:
drwxrwxr-x 2 nobody nobody 4096 May 26 14:42 Directory
您的原始目錄列表可能顯示:
drwxrwxr-x+ 2 nobody nobody 4096 May 26 14:42 Directory ^ \ Note the extra + character here.
如果您不了解該約定,則很容易忽略該約定,但來自手冊
當文件模式位後面的字元是空格時,沒有替代訪問方法。當它是列印字元時,就有這樣的方法。
GNU ’ls’ 使用 ’
.
’ 字元表示具有 SELinux 安全上下文的文件,但沒有其他替代訪問方法。具有任何其他替代訪問方法組合的文件用“
+
”字元標記。