Script shell

pharaon44 Messages postés 40 Statut Membre -  
pharaon44 Messages postés 40 Statut Membre -
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

8 réponses

  1. pharaon44 Messages postés 40 Statut Membre 1
     
    Est-ce que cela pourrait être lié au droit du démon hotplug?
    0
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    comment est démarré le daemon ? cron, /etc/rc.local, ?
    0
  3. pharaon44 Messages postés 40 Statut Membre 1
     
    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
    0
  4. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    mais commemt est démarré ton script ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. pharaon44 Messages postés 40 Statut Membre 1
     
    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.
    0
  7. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    Est-ce que les 3 messages-box s'ouvrent simultanément ou séquentiellement ?
    0
  8. pharaon44 Messages postés 40 Statut Membre 1
     
    Tout s'ouvre en même temps!
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Essaie 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
      
      0
  9. pharaon44 Messages postés 40 Statut Membre 1
     
    Avec ou sans, le problème reste identique...
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Et à quoi ressemble ton daemon "hotplug" ?
      0
    2. pharaon44 Messages postés 40 Statut Membre 1
       
      Que veux tu dire par à quoi ressemble le daemon hotplugd? Je suppose que c'est de l'assembleur...
      0
    3. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Tu 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 ?
      0
    4. pharaon44 Messages postés 40 Statut Membre 1
       
      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, ...
      0