為什麼我無法存取我擁有的資料夾?

為什麼我無法存取我擁有的資料夾?

我在 EC2 中運行 CentOS 虛擬機器。我以 ec2-user 身份使用 ssh,並希望為即將部署的應用程式建立一個日誌資料夾:

sudo mkdir /var/log/search-api
sudo chown ec2-user /var/log/search-api

現在我正在ls該資料夾上運行並獲得Permissions denied

[ec2-user@box_name ~]$ ls /var/log/search-api
ls: cannot access /var/log/search-api: Permission denied

當我嘗試將文件寫入該資料夾時,也會發生同樣的情況:

[ec2-user@box_name ~]$ echo 'test' > /var/log/search-api/aaa.log
-bash: /var/log/search-api/aaa.log: Permission denied

為什麼我沒有權限列出我擁有的資料夾或向其中寫入內容?

答案1

假設沒有 ACL,您需要對所有目錄(從根目錄)具有「執行」權限才能存取給定檔案(無論您是否擁有該檔案)。

答案2

在 CentOS 中,您還需要注意 SELinux 標籤。它們不僅僅是任意的東西,但是如果您決定使用非標準用戶將非標準的東西寫入非標準的地方,您可能會被燒毀。

請澄清使用什麼是 SELinux 標籤ls -Z。還有您的審核日誌中與 AVC 相關的內容。

相關內容