簡體   English   中英

通過服務生成GUI

[英]Spawn GUI from service

我有一個以root身份運行在通過systemd啟動的linux系統中的服務。 此服務有時可能會在用戶當前的登錄環境中生成GUI(我通過DBUS從Logined獲得了Display和Xauth的值)。 gui的啟動工作正常,但是環境混亂了。

目前,gui是通過forkexecvp啟動的。 在調用execvp之前,使用setuidsetgid放棄特權。

用正確的環境變量啟動過程的合適方法是什么? 當前,當嘗試從應用程序中使用例如policykit ,出現錯誤,無法找到當前的/dev/tty ,依此類推。

是否適合使用su -l 還是有其他方法可以以其他用戶身份啟動流程?

su允許您指定運行用戶,例如:

su nonrootuser -c "/usr/bin/mygui"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM