crontabを介して実行され、完全に機能するPythonプログラムがあります。しかし、私はそれが何をしているのかを私に通知する機能を追加することに決めました、そして突然それは失敗します。コマンドラインから実行しますが、crontabプログラムとして実行すると失敗します
libnotify-Message: Unable to get session bus: /bin/dbus-launch terminated abnormally with the following error: Autolaunch error: X11 initialization failed.
私は何が間違っているのですか?
編集 このプログラムを引き続きcronから実行し、ユーザーにその作業を通知できるようにしたいと思います。これを行う方法はありますか?
編集
2rootのcrontabを使用してみましたsudo -u esr python script.py
が、これも失敗します。
編集3 可能です!これがコードです。
* * * * * su $user -c "DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$(ps -au esr | grep -i "gnome-session" | awk '{ print $1 }')/environ | sed -e 's/DBUS_SESSION_BUS_ADDRESS=//') $(whereis notify-send | awk '{ print $2 }') -u normal -t 20000 \"Hello\" "