サーバー上で Python スクリプトを実行し、DBus Python ライブラリを介して ( のようなfinch
コンソール インターフェイスを持つ のコンソール インターフェイス)と通信して、メッセージを送信したり、仲間のオンライン ステータスを確認したりしたいと考えています。pidgin
links2
これは、X で実行する場合に機能しますfinch
。X ターミナルで実行し、Python スクリプトを別のターミナルでエラー/例外なしで実行します。
ただし、X なしで実行する場合はfinch
、TTY1 (ctrl+alt+f1) で実行し、TTY2 (ctrl+alt+f2) で Python スクリプトを実行する必要がありますが、Python スクリプトは失敗します。
以下は、スクリプトの最初の数行です。
import dbus
bus = dbus.SessionBus() # gives EXCEPTION error
obj = bus.get_object("im.pidgin.purple.PurpleService", "/im/pidgin/purple/PurpleObject")
...
例外エラーは次のとおりです。
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: dbus-launch failed to autolaunch D-Bus session: Autolaunch error: X11 initialization failed.`
finch
おそらく同じTTYでスクリプトを実行する必要があることをどこかで読みました。cd
ただし、ある行と次の行で実行するようなものではないため、適切にテストできませんls
。と入力finch
すると実行され、 などの他のコマンドを入力することはできなくなりますlinks2
。finch &
代わりに実行してみましたが、一時停止しているようfinch
で、スクリプトを実行しても同じエラーが発生します。
解決?ありがとう。