Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Pracovní prostředí => Téma založeno: Tomaskocz 07 Srpna 2014, 16:39:47

Název: /usr/bin/notify-send nebo zenity a CRON
Přispěvatel: Tomaskocz 07 Srpna 2014, 16:39:47
Ahoj.

Prosím zkusil by někdo poslat notifikaci do systému přes CRON?
Zkoušel jsem:
Kód: [Vybrat]
*/15 * * * * env DISPLAY=:0 /home/tomas/test.sh
Pak různé kombinace s DISPLAY=:0.0, zkoušel jsem i zenity --notification --text='Nové zprávy z forum.ubuntu!', pak různě experimentovat s crontab pod uzivatelem za kterého jsem přihlášen i rootovským cronem.

Hledal jsem na internetu (http://fhanik.blogspot.cz/2014/01/notify-send-as-cronjob.html (http://fhanik.blogspot.cz/2014/01/notify-send-as-cronjob.html)), něco jsem se dočetl ohledně DBUS, ale zatím jsem nic nezprovoznil.

Z terminálu mi /usr/bin/notify-send i zenity pod sudo, popř. spuštěním skriptu viz níže notifikace funguje.

test.sh:
Kód: [Vybrat]
#!/bin/bash
notify-send -t 6000 "Relaxation" "Take the time, relax a few minutes."

Ubuntu 12.04 Gnome 3.4.2, pracovní prostředí mám Gnome-shell

Děkuji.
Název: Re:/usr/bin/notify-send nebo zenity a CRON
Přispěvatel: GdH 07 Srpna 2014, 20:20:02
Když jsem chtěl poslat notifikaci pod rootem, řešil to přepnutím na konkrétního přihlášeného uživatele s X session, tedy:
Kód: [Vybrat]
su uživatel -c 'DISPLAY=:0 notify-send něco'Z cronu uživatele mi stačí nastavit $DISPLAY, aby se notifikace zobrazila. Sice to momentálně ověřuju na 14.04, ale když jsem si s tím dost hrál před lety ještě na 10.10, tak to fungovalo stejně. Předpokládám, že máš test.sh nastaven jako spustitelný. Víc mě k tomu nenapadá.