Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[udev] lancer une synchronisation de dossiers quand j'insère une clé usb

31 réponses
Avatar
Francois Lafont
Bonjour à tous,

Je suis sous Debian Squeeze avec Gnome version "2.3". Je voudrais que,
juste après avoir branché une clé usb particulière, la commande suivante
soit exécutée :

rsync -ax --progress --delete /dossier/source/ /media/ma-cle/cible/

afin de synchroniser un dossier « cible » de ma clé usb avec un dossier
« source » de mon PC.

Voilà où j'en suis pour l'instant. J'ai crée le fichier «
101-MY-key-save.rules » dans le dossier « /etc/udev/rules.d » et ce
fichier contient cette ligne là :

ACTION=="add", ATTRS{product}=="Cruzer",
ATTRS{serial}=="445671168F907F84", RUN+="/home/francois/Bureau/go.bash"

C'était juste un test idiot où le script go.bash est le suivant :

#----------------------------------------
#! /bin/bash

echo "Éxecution..." >> "/home/francois/Bureau/out.txt"
#----------------------------------------

1) Mon problème, c'est que, lorsque j'insère ma clé usb, j'ai bien un
fichier « out.txt » qui est crée sur le Bureau mais il contient 11 fois
la ligne « Éxecution... » ? J'en conclus que le script « go.bash » a été
lancé 11 fois, non ? Pourquoi ? J'imaginais qu'il y aurait une seule
exécution ?

Une fois que j'aurais résolu ce problème, j'aurais d'autres obstacles à
surmonter sur lesquels je n'ai pas trop d'idée :

2) A priori ma clé est automatiquement monté sur le dossier «
/media/KEYSAVE ». Mais comment être sûr d'exécuter le script « go.bash »
après le montage. J'ai nommé ma règle udev « 101-MY-key-save.rules » et
je pensais que la valeur 101 me garantissait que l'exécution se
produirait en dernier (ou presque). Pourtant, de visu, il m'a semblé que
le montage de la clé s'effectuait un temps après l'exécution du script.

3) Ou bien je pourrais gérer un montage puis démontage de la clé « fait
maison » dans le script « go.bash » mais dans ce cas comment connaître à
l'avance le nom de fichier associé à ma clé dans /dev (même si ça semble
être /dev/sdc souvent mais si j'insère avec une autre clé usb avant...) ?

Merci d'avance pour votre aide.

--
François Lafont

1 réponse

1 2 3 4
Avatar
Francois Lafont
Merci bien Bruno et Nicolas pour les ultimes précisions. Encore un fil
sympa où j'ai appris plein de trucs. :-)

À bientôt.

--
François Lafont
1 2 3 4