页次: 1
org.freedesktop.Hal => hal
org.freedesktop.login1 => systemd
org.gnome.SessionManager => gnome-session
org.kde.KSMServerInterface => kde
没有统一的办法。
离线
你没有systemd-logind 哪儿来的登录会话?登录会话这个概念就依赖特定的登录管理器,只能硬编码,systemd一种,ConsoleKit一种,xx管理器一种,yy管理器另一种。dropbear的会话就是它自己管理的,不会产生logind会话session。
登录管理器本来就是OS的一部分,一个OS仅此一份,你这个要求无异于要求一个程序同时运行于Windows和VxWorks,那就判断当前操作系统然后硬编码呗,你以为跨平台还真的是一份代码到处运行啊?
最近编辑记录 xtricman (2019-09-01 09:12:07)
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
你没有systemd-logind 哪儿来的登录会话?
这个问题你后面不就自己回答了?
登录会话这个概念就依赖特定的登录管理器,只能硬编码,systemd一种,ConsoleKit一种,xx管理器一种,yy管理器另一种。dropbear的会话就是它自己管理的,不会产生logind会话session。
登录管理器本来就是OS的一部分
和着X session才是会话,普通的用户登录不是?
一个OS仅此一份,你这个要求无异于要求一个程序同时运行于Windows和VxWorks
我同时开两个X session,一个用logind,一个ConsoleKit怎么不行?
你以为跨平台还真的是一份代码到处运行啊
怎么又扯到跨平台上面去了?除了*bsd没有systemd,还有什么差异在这里是需要考虑的?
离线
Session不是一个良定义的概念,含义取决于上下文,logind session跟ConsoleKit session不是一个概念 跟 X session也不是一个概念。尤其是你登录了tty再startx会有很明显的效果,logind session不是X session. 同理也不能不依赖session Manager 定义退出session。
没有systemd也不知道有什么
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
你对小程序的定义是啥?大多数session Manager支持dbus call. 那dbus-send 可能算大程序?
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
你对小程序的定义是啥?大多数session Manager支持dbus call. 那dbus-send 可能算大程序?
其实我之前的疑问类似于能不能查询我该向哪个object发送消息。当然之后两个回复都说没有那就暂时没有吧。
如果能查的话,那直接最简单的只需要弹出一个菜单(gtk)让我选要关机、重启还是别的就行。我用了lxpanel,lxpanel有个注销命令,我就把注销命令设成它。
不能查的话,支持特定的也可以,比如如果知道用的是logind的话,当然知道object是哪个。
离线
的确是不能,每个session Manager都有自己独特的interface让你注销会话,故而你即使反射查到了它所有的method也没用,不读文档或源码鬼知道这个method到底是用来干嘛的。
或者说得更简单,类似于,一个没文档的库,鬼才知道某个函数是啥功能。
这不是一个内核态的概念,而*nix类系统大多数用户态有很大的弹性,所以没有办法确定如何做一个依赖于具体用户态组织的功能
反社会,精神极其不稳定,随时可能炸碎身边所有人
离线
页次: 1