我遇到一个奇怪的问题,试图在任何用户登录之前在启动时运行一个小程序。
我在启动时使用了不同的运行程序的方法,但没有任何帮助我!无论如何,我有一个小的Qt程序,通过DBUS(systembus)与不同的程序进行通信。目前该程序是以upstart启动的,并在系统中注册服务等。我也可以使用“qdbus --system”调用程序的不同方法,这些方法立即返回正确的返回值。 我已将Qt程序设置为每秒发送一个DBUS信号。当使用dbus-monitor监视时,我只看到每2-5秒传递一个信号,但是当我杀死程序并以用户(root)身份登录时,程序发送信号就好了(每秒一次)。
这怎么可能?我希望程序发送信号在计算机启动时运行,并让另一个用户应用程序连接到信号,以便在收到信号时采取措施。
我尝试使用init.d方式和正常的rc.local方式将程序作为一个upstart作业运行,但都具有相同的结果。
我是否必须让用户登录才能使用?
谢谢,
西斯科