我有一些Ruby代碼,它具有以下如何從守護程序進程中執行rgvim?
system("rgvim " + MY_FILE)
這個工作從終端正常,但如果我使用systemd運行此代碼爲機架應用中,系統調用失敗的工作。我得到的消息:
Dec 06 14:40:54 mypc config.ru[10211]: Vim: Warning: Output is not to a terminal
Dec 06 14:40:54 mypc config.ru[10211]: Vim: Warning: Input is not from a terminal
我認爲這是因爲守護程序進程無法訪問文件描述符。
編輯一些評論者詢問我的用例的更多具體細節。這裏是:我試圖啓動一個基於機架的紅寶石應用程序systemd
。齒條應用在代碼中的上述系統的呼叫,並且當從使用
rack config.ru
然而終端,當我systemd啓動它運行它工作得很好,如更一般如上所述,齒條的應用不有權訪問正確的文件描述符。在我看來,它應該是某種程度上能夠映射當前X顯示和/或文件描述符從systemd
哪個終端做你期望'vim'要附加當您從您的守護進程調用它? – derobert
對於這個問題,你甚至期望vim在做這樣的調用時做什麼? – duskwuff
Deamons通常使用/ dev/null與stdio一起運行。你究竟想要做什麼? – Keith