我有一個使用Delayed Job Gem運行後臺任務的Rails站點。後臺任務需要一張PDF並將其轉換爲一系列圖像。在ubuntu上以超級用戶身份運行的延遲作業進程
Rails應用程序以「nobody」運行,延遲的作業進程以「root」運行。
後臺任務運行正常,但Rails應用程序嘗試刪除由延遲的作業進程創建的文件時出現問題:我收到了'Permission denied'消息。所以'沒有人'不能刪除'root'創建的文件。
的問題可以是固定的,如果我設置的文件/文件夾的權限有:
chmod -R 755
但這並不影響新文件。
我在根帳戶下使用Capistrano部署我的Rails應用程序。
我很喜歡作爲linux系統管理員的noob。你能建議我哪裏出錯嗎?
非常感謝
我更喜歡使用名爲rails(或www,或其他)的相同用戶來運行我的rails應用程序和延遲作業。您可以告訴capistrano使用set:user'username'與您想要的用戶進行部署,並且我認爲延遲作業會與安裝該gem的用戶一起運行。 – sailor
啊,那位'延遲的工作與安裝了gem的用戶一起運行'是有用的,我將不得不調查並嘗試使用不同的帳戶來運行。 – PeteG