2013-08-03 55 views
0

因此,我已閱讀移植指南(https://wiki.tizen.org/wiki/Porting_Guide)。有一個名爲「Tizen Bootup Overview」的部分。本節說運行systemd守護進程的用戶實例。當我運行模擬器時,我可以看到它與ps aux | grep systemd,我看到它由用戶app運行。但是當我輸入systemctl --user list-units作爲app用戶我收到以下消息Failed to issue method call: Failed to execute program /bin/false: Success。但是,當我輸入/usr/lib/systemd/systemd --user &作爲app用戶,並且只有對列表單元方法的調用才能正常運行。我不太瞭解運行systemctl --user list-units的問題嗎?連接到Tizen上systemd的用戶實例

據我瞭解DBus服務文件已經指定可執行文件已經有/ bin/false,以避免systemd --user被意外DBus激活。 但看的systemctl來源我看到有--user選項運行時,它會嘗試連接到Dbus送往"unix:path=$XDG_RUNTIME_PATH/systemd/private"

我是很新,既systemd和DBUS。在連接到systemd之前,我嘗試從我的程序中調用/usr/lib/systemd/systemd --user &並且它工作正常,但systemd開始執行用戶目標。 我連接到的DBus與dbus_bus_get(DBUS_BUS_SESSION, &err)DBUS_BUS_SESSION是連接到用戶實例,因爲我看的僅有一名來源systemd & Co理解)

PS:Tizen使用systemd v43

在此先感謝。

對不起,我的英文破碎。

回答

0

答案是: 要連接到systemd的用戶會話:

$ su -

# su - app

app$ export XDG_RUNTIME_DIR=/run/user/app

app$ systemctl --user status default.target