Sou novo no dbus (usando Ubuntu 14.04, Unity). Então, estou logado com o usuário A, crio o processo como usuário B e esse processo cria uma sessão para o usuário B, agora quero usar mensagens dbus para encerrar a sessão desse processo para o usuário B. Quero que meu processo funcione em todos os desktops env. Então eu tenho uma ferramenta de download chamada d-feet
e comecei a brincar com ela, percebi que toda vez que uma sessão é criada no sistema /org/freedesktop/User/1002
é adicionada (1002 é o UID do usuário B) no org.freedesktop.login1
.
Então tentei iniciar:
sudo dbus-send --type=method_call --print-reply --system --dest=org.freedesktop.login1 /org/freedesktop/login1/user/1000 org.freedesktop.login1.User.Terminate
Mas me dá um erro dizendo Error org.freedesktop.DBus.Error.UnknownObject: Unknown user
, usei ctr+alt+f1
o login como usuário B, lancei startx
e do usuário Como desktop usei o mesmo comando, dá um erro dizendo 'GDBus.Error:org.freedesktop.DBus.Error.UnknownObject: Permission Denied'
Mas desta vez funciona (desliga a sessão). Estou um pouco perdido. Espero que você possa ajudar. Obrigado.