PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : zenity von einem system script aus starten



kamome
27-12-2007, 11:08
Hi, ich habe ein backup script, das beim Anstecken einer bestimmten USB-Festplatte gestartet wird. Nun will ich aber nach dem Einbinden der Platte beim Nutzer nachfragen, ob ein Backup durchgeführt werden soll oder nicht, dafür ist meine Wahl auf zenity gefallen. Ich will den zenity dialog auf DISPLAY :0.0 anzeigen lassen. Wenn ich das script manuell als root von VT1 starte, funktioniert das auch, aber, wenn das script von udev gestartet wird (ps aux zeigt, das dies auch als root geschiet), erscheint der zenity dialog nicht (das restliche script wird weiter ausgeführt). Weiß da jemand von Euch Abhilfe?

Das script sieht vereinfacht folgendermaßen aus:


export DISPLAY=:0.0
zenity --question --title="Backup" --text="Backup durchführen?"
if [ $? -eq 0 ]; then backup; fi

Es wird furch folgende udev-Regel gestartet:


KERNEL=="sd?1", SYSFS{idVendor}=="13fd", SYSFS{idProduct}=="1240", SYMLINK+="backup", RUN+="/usr/local/bin/backup.sh"

kamome
14-03-2008, 13:46
Gelöst auf http://forum.ubuntuusers.de/topic/72877/

sudo -H -u <username> zenity --display :0.0 <...>
(alternativ mit xauth)