Security
即使具有適當的組權限,“執行生成步驟失敗”
我正在為基本的 Web 伺服器設置權限,但在使用 systemd 啟動伺服器時遇到了一些困難。
在我的職位描述中,我將使用者和組設置為“foo”,如下所示:
[Service] WorkingDirectiory=/home/otheruser/Website ExecStart=/home/otheruser/Website/bin/site -Dhttp.port=7000 User=foo Group=foo
我遞歸地將
Website
目錄的組更改為foo
,並確保為site
二進製文件授予組執行權限。當我仍然有問題時,我chown
將整個目錄用於foo
. 以下是目錄ls -la
中顯示的內容bin
:drwxr-xr-x 2 foo foo 4096 Sep 5 16:13 . drwxr-xr-x 7 foo foo 4096 Sep 5 18:07 .. -rwxr-xr-x 1 foo foo 8502 Sep 5 16:13 site
無論如何,我在嘗試開始我的 systemd 工作時仍然收到此錯誤:
foo.service: Failed at step EXEC spawning /home/otheruser/Website/bin/site: Permission denied
有什麼想法可能導致這種情況嗎?
在進行了更多修改之後,我最終發現樹中較高的一些目錄(即
/home/otheruser
)不允許執行foo
. 雖然該Website
目錄具有正確的權限,但上述目錄沒有,這導致了失敗。