Kjøre bashscript engang fra udev

Kategori overført fra Linux1

Kjøre bashscript engang fra udev

Innleggav dODo » tor 15.10.2009 17:13

Hei.

Jeg prøver å få til at når jeg setter inn en spesiell minnepinne, så skal den formateres og synces mot en mappe.

Dette får jeg delvis til, problemet er at scriptet kjører mange ganger etterhverandre, etter at jeg er ferdig med første runde.

Udevregel:
Kode: Merk alt
BUS=="usb", ACTION=="add", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2517", NAME="minne",  SYMLINK="minne_usb", RUN+="/usr/bin/test_v3.sh"


bashscriptet har også innbakt en gui-notifikasjon, som jeg tilslutt har fått til å fungere.
Dog kommer den opp minst 10 ganger.

Bash-scriptet:
Kode: Merk alt
#!/bin/bash
sleep 3
set -x
xhost local:BRUKERNAVN
export DISPLAY=:0.0
/usr/bin/zenity --question --text "Vil du formatere?" --cancel-label=Nej --ok-label=jupp #; echo $?
if [[ $? == 0 ]] ; then
   {   
szAnswer=$(zenity --entry --text "passord?" --hide-text ); 
sudo umount  /media/pinne
echo $szAnswer
sudo mkfs.vfat /dev/minne
sudo mount  /dev/minne
zenity --progress --pulsate
rsync -ar /home/brukernavn/usb_arkiv/ /media/pinne/
   }
else
   echo "auda"
fi


Jeg vet ikke helt om feilen ligger i udev-delen, eller i bash-scriptet.
Har prøvd andre varianter av bash-scriptet blant anna med python for å lage gui-delen og er det samme problemet.
medlem i 216 måneder
 

Re: Kjøre bashscript engang fra udev

Innleggav thorak » fre 16.10.2009 16:29

Uten å ha gjort noe tilsvarende, vil jeg tippe at udev-regelen er problemet, kan du ikke bare lage ett lite tekstscript som echo'er tidspunktet til en gitt fil, så vil du vel raskt se om den kalles flere ganger.

Brukerens avatar
medlem i 231 måneder
 

Re: Kjøre bashscript engang fra udev

Innleggav dODo » fre 13.11.2009 11:58

Hmm, ikke rukket å gjøre så mye med denne.

Men stemmer. Med date til loggfil, viser at den kjører fire ganger.

Jeg får nok gå igjennom udev-regelen en gang til.
medlem i 216 måneder
 


Returner til Utvikling i Linux



Hvem er i Forumene

Registrerte brukere: Google [Bot]



cron