Security

即使具有適當的組權限,“執行生成步驟失敗”

  • September 5, 2016

我正在為基本的 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目錄具有正確的權限,但上述目錄沒有,這導致了失敗。

引用自:https://serverfault.com/questions/801195