Script shell
Bonjour,
Je suis en train de réaliser un script qui doit ouvrir un message box avec Xdialog. Ce script est lancé par le demon hotplug sous openbsd afin de monter une clé USB.
Le truc c'est qu'il m'ouvre trois messagebox lorsqu'il est appelé par le demon et lorsque je le lance à la main, il ne m'en ouvre qu'une!! Est-ce que quelqu'un aurait une idée pour éviter que le script m'ouvre trois messagebox.
Voici le script:
#!/bin/sh
.$HOME/.profile
PATH=$PATH:/usr/X11R6/bin:/usr/local/bin
export PATH
DISPLAY=:0
export DISPLAY
Xdialog --title "MESSAGE BOX" \
--msgbox "La cle est valide,
elle va etre montee!!" 10 41
exit 1
Je suis en train de réaliser un script qui doit ouvrir un message box avec Xdialog. Ce script est lancé par le demon hotplug sous openbsd afin de monter une clé USB.
Le truc c'est qu'il m'ouvre trois messagebox lorsqu'il est appelé par le demon et lorsque je le lance à la main, il ne m'en ouvre qu'une!! Est-ce que quelqu'un aurait une idée pour éviter que le script m'ouvre trois messagebox.
Voici le script:
#!/bin/sh
.$HOME/.profile
PATH=$PATH:/usr/X11R6/bin:/usr/local/bin
export PATH
DISPLAY=:0
export DISPLAY
Xdialog --title "MESSAGE BOX" \
--msgbox "La cle est valide,
elle va etre montee!!" 10 41
exit 1
8 réponses
-
Avec ou sans, le problème reste identique...
-
-
-
ContributeurTu dis que tu appelles ton script via le daemon hoplug, je te cite "Ce script est lancé par le demon hotplug sous openbsd afin de monter une clé USB. "
Donc normalement ce daemon est un script shell à l'intérieur duquel doit se trouver l'appel à ton script, non ?
Donc à quoi ressemble ce script ? -
En fait, je pense que pour voir le code du daemon, il faut avoir un logiciel qui permette de lire le binaire (c'est installé par défaut avec l'OpenBSD). Bref, je fais un max de recherches pour avoir l'info... Pour le moment, j'ai pas trouvé sur le net. Je pense avoir compris comment ça fonctionne mais de quoi il retourne... j'avoue, j'aurais dû creuser avant, mais je ne pense pas être trop loin de la vérité avec les infos que je t'ai données...
Dés que j'en sais plus, je te tiens au courant. Maintenant, ...
-
-
Tout s'ouvre en même temps!
-
ContributeurEssaie de mettre un verrou sur ton script (sans garantie) :
#!/bin/sh .$HOME/.profile PATH=$PATH:/usr/X11R6/bin:/usr/local/bin export PATH DISPLAY=:0 export DISPLAY if mkdir -p /tmp/verrou 2>/dev/null then Xdialog --title "MESSAGE BOX" \ --msgbox "La cle est valide, elle va etre montee!!" 10 41 rmdir /tmp/verrou exit 1 fi
-
-
ContributeurSalut,
Est-ce que les 3 messages-box s'ouvrent simultanément ou séquentiellement ?
-
Le démon hotplug est activé via le fichier rc.conf.local sous /etc. Ensuite, il est lancé à chaque démarrage du système. Il surveille l'activité du branchement matèriel.
-
Contributeurmais commemt est démarré ton script ?
-
Bonjour dubcek,
Cron est lancé au démarrage du système, à l'aide du fichier /etc/rc mais je suis pas sûr à 100%. Lorsque je fais un crontab -e, j'obtiens:
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
#minute hour mday month wday command
#
# sendmail clientmqueue runner
*/30 * * * * /usr/sbin/sendmail -L sm-msp-queue -Ac -q
#
# rotate log files every hour, if necessary
0 * * * * /usr/bin/newsyslog
# send log file notifications, if necessary
#1-59 * * * * /usr/bin/newsyslog -m
#
# do daily/weekly/monthly maintenance
30 1 * * * /bin/sh /etc/daily
30 3 * * 6 /bin/sh /etc/weekly
30 5 1 * * /bin/sh /etc/monthly
#0 * * * * /usr/libexec/spamd-setup -
Contributeurhello
comment est démarré le daemon ? cron, /etc/rc.local, ? -
Est-ce que cela pourrait être lié au droit du démon hotplug?