HomePage
Materiel
Photo Système et réseau Sous Debian Gnu Linux... ... et Ubuntu Gestion de projet ...informatique Cours Divers Private edit SideBar |
Deb /
UdevDeb.Udev HistoryHide minor edits - Show changes to output February 10, 2015, at 10:29 AM
by
- Changed lines 63-64 from:
!! Script de backup to:
NB : en cas d'utilisation de plusieurs disques (sauvegarde tournante) d'un même modèle, il est pratique d'utiliser les attributs "idVendor" et "idProduct" du périphérique USB obtenus avec un simple ''lsusb'' (il est aussi possible d'ajouter le serial si besoin) Added lines 65-77:
# Création d'un symlink /dev/backupdevice en plus du symlink std /dev/sd... SUBSYSTEMS=="usb", ATTRS{idVendor}=="1058", ATTRS{idProduct}=="0748", KERNEL=="sd[a-z]", NAME:="%k", SYMLINK:="backupdevice", OPTIONS="last_rule" # Création d'un symlink pour la partition SUBSYSTEMS=="usb", ATTRS{idVendor}=="1058", ATTRS{idProduct}=="0748", ACTION=="add", KERNEL=="sd[a-z]1", SYMLINK:="backuppartition", GROUP:="users", NAME:="%k" # Montage automatique du disque SUBSYSTEMS=="usb", ATTRS{idVendor}=="1058", ATTRS{idProduct}=="0748", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/bin/mount -t vfat -o user,umask=000,noauto /dev/%k /mnt/backup" # Lancement du script de backup SUBSYSTEMS=="usb", ATTRS{idVendor}=="1058", ATTRS{idProduct}=="0748", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/home/user/bin/rsync/rsync_backup.sh", OPTIONS="last_rule" @] !! Script de backup [@ March 04, 2009, at 10:40 PM
by
- Changed lines 9-12 from:
!! Ajout des règles locales Créer/modifier le fichier des règles locales : @@# vim /etc/udev/rules.d/z99_local.rules@@ to:
!! Objectif Le but est d'utiliser UDEV pour : * reconnaitre un disque dur (ou un quelconque périphérique de stockage) lorsqu'on le branche à l'ordinateur * lancer un script qui va créer backup sur ce périphérique automatiquement * prévenir l'utilisateur que le backup est en cours (boites de dialogue zenity + mail) Pour ce faire il faudra : * identifier le périphérique qui servira de support au backup * créer les règles UDEV pour ce périphérique * créer le script de backup automatique (utilisation de RSync) !! Identification du périphérique de sauvegarde Brancher le périphérique et lancer aussitôt la commande suivante dans un terminal @@ordinateur:/home/user# dmesg@@ Vous devriez trouver des données sur le périphérique connecté ressemblant à ceci : Changed lines 28-31 from:
SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", KERNEL=="sd[a-z]", NAME:="%k", SYMLINK:="backupdevice", OPTIONS="last_rule" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", SYMLINK:="backuppartition", GROUP:="users", NAME:="%k" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/bin/mount -t vfat -o user,umask=000,noauto /dev/%k /mnt/backup" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/home/user/bin/rsync/rsync_backup.sh", OPTIONS="last_rule" to:
[ 1701.911387] usb 5-1: new high speed USB device using ehci_hcd and address 10 [ 1702.060525] usb 5-1: configuration #1 chosen from 1 choice [ 1702.063465] scsi6 : SCSI emulation for USB Mass Storage devices [ 1702.063465] usb-storage: device found at 10 [ 1702.063465] usb-storage: waiting for device to settle before scanning [ 1702.063465] usb 5-1: New USB device found, idVendor=059f, idProduct=101a [ 1702.063465] usb 5-1: New USB device strings: Mfr=10, Product=11, SerialNumber=3 [ 1702.063465] usb 5-1: Product: LaCie Hard Drive USB [ 1702.063465] usb 5-1: Manufacturer: LaCie [ 1702.063465] usb 5-1: SerialNumber: 00E0010223082 [ 1707.083907] usb-storage: device scan complete [ 1707.083922] scsi 6:0:0:0: Direct-Access Hitachi HTS543225L9SA00 PQ: 0 ANSI: 2 CCS Changed lines 42-43 from:
!! Script de backup to:
Les informations qui vont particulièrement nous intéresser pour identifier le périphérique de manière unique seront les suivantes : * '''Manufacturer''': LaCie * '''SerialNumber''': 00E0010223082 Vous pouvez choisir d'autres informations, celles-ci m'ont personnellement suffit. !! Ajout des règles locales à UDEV Créer/modifier le fichier des règles locales : @@# vim /etc/udev/rules.d/z99_local.rules@@ Added lines 53-65:
# Création d'un symlink /dev/backupdevice en plus du symlink std /dev/sd... SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", KERNEL=="sd[a-z]", NAME:="%k", SYMLINK:="backupdevice", OPTIONS="last_rule" # Création d'un symlink pour la partition SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", SYMLINK:="backuppartition", GROUP:="users", NAME:="%k" # Montage automatique du disque SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/bin/mount -t vfat -o user,umask=000,noauto /dev/%k /mnt/backup" # Lancement du script de backup SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/home/user/bin/rsync/rsync_backup.sh", OPTIONS="last_rule" @] !! Script de backup [@ March 04, 2009, at 10:28 PM
by
- Changed lines 54-55 from:
su - ${USERNAME} -c "$RSYNC -avz --delete-after ${ORIGINPATH} ${DESTPATH}/ 2>&1 >> ${LOGFILE}" to:
$RSYNC -avz --delete-after ${ORIGINPATH} ${DESTPATH}/ 2>&1 >> ${LOGFILE} February 12, 2009, at 04:23 PM
by
- Changed line 71 from:
STRMAIL="La sauvegarde a retourné une erreur <$?>, une trace a été laissée dans le fichier ${LOGFILE}.\nConsulter cette page pour les messages d erreur lies a Rsync http://www.delafond.org/traducmanfr/man/man1/rsync.1.html#lbAY." to:
STRMAIL="La sauvegarde a retourné une erreur <$?>, une trace a été laissée dans le fichier ${LOGFILE}.\nAide : http://www.delafond.org/traducmanfr/man/man1/rsync.1.html#lbAY." February 12, 2009, at 04:22 PM
by
- Added lines 8-109:
!! Ajout des règles locales Créer/modifier le fichier des règles locales : @@# vim /etc/udev/rules.d/z99_local.rules@@ [@ SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", KERNEL=="sd[a-z]", NAME:="%k", SYMLINK:="backupdevice", OPTIONS="last_rule" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", SYMLINK:="backuppartition", GROUP:="users", NAME:="%k" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/bin/mount -t vfat -o user,umask=000,noauto /dev/%k /mnt/backup" SUBSYSTEMS=="usb", ATTRS{serial}=="00E0010223082", ATTRS{manufacturer}=="LaCie", ACTION=="add", KERNEL=="sd[a-z]1", RUN+="/home/user/bin/rsync/rsync_backup.sh", OPTIONS="last_rule" @] !! Script de backup [@ #!/bin/sh # Déclaration des variables entrant en option dans la commande rsync USERNAME="user" # utilisateur (pour popups graphiques) ORIGINPATH="/home/user/data" # chemin du répertoire à sauvegarder, d'origine DESTMOUNTPOINT="/mnt/backup/" # point de montage du répertoire de destination DESTREP="backupdir" # répertoire de destination de la sauvegarde EMAIL="user@domain.fr" # variables internes au script RSYNC="/usr/bin/rsync" DESTPATH=${DESTMOUNTPOINT}${DESTREP} # chemin du répertoire de destination de la sauvegarde LOGFILE="/home/user/bin/rsync/rsync_${DESTREP}-result.log" EMAIL_TITLE="Sauvegarde ${ORIGINPATH} vers ${DESTPATH}" #----------------------------------- # DEBUT SCRIPT #----------------------------------- # Trace du début de la sauvegarde dans le fichier de LOG echo `date`" - DEBUT DE COPIE RSYNC de ${ORIGINPATH} vers ${DESTPATH}" > ${LOGFILE} su - ${USERNAME} -c "DISPLAY=:0.0 zenity --info --text='Début de la sauvegarde \nde ${ORIGINPATH} \nvers ${DESTPATH} \n\nLogfile : ${LOGFILE}'" # Envoi d'un mail pour prévenir du début de la sauvegarde echo "la sauvegarde vient d etre lancee, un Email vous sera envoye lorsque celle ci sera finie et reussie" | mail -s "[RSync Notification - Start] ${EMAIL_TITLE}" ${EMAIL} # Lancement de la sauvegarde if [ -d ${DESTPATH} ] then su - ${USERNAME} -c "$RSYNC -avz --delete-after ${ORIGINPATH} ${DESTPATH}/ 2>&1 >> ${LOGFILE}" # Liste des fichiers sur le repertoire de destination echo "" echo "Voici les données contenues dans le répertoire de destination:" ls -l "${DESTPATH}" echo "" # Trace de la fin de sauvegarde dans le fichier de LOG echo `date`" - FIN DE COPIE RSYNC" >> ${LOGFILE} # Résultat par mail if [ $? -eq 0 ] then STRMAIL="La sauvegarde de vos données est terminée, une trace a été laissée dans le fichier ${LOGFILE}." STRMAILSUB="[RSync Notification - OK]" else STRMAIL="La sauvegarde a retourné une erreur <$?>, une trace a été laissée dans le fichier ${LOGFILE}.\nConsulter cette page pour les messages d erreur lies a Rsync http://www.delafond.org/traducmanfr/man/man1/rsync.1.html#lbAY." STRMAILSUB="[RSync Notification - ERROR]" fi else # Trace de la fin de sauvegarde dans le fichier de LOG echo `date`" - COPIE RSYNC ABANDONNEE" >> ${LOGFILE} # résultat par mail STRMAIL="Sauvegarde abandonnée (répertoire de destination inexistant)." STRMAILSUB="[RSync Notification - ABANDON]" fi # TRACE echo ${STRMAIL} su - ${USERNAME} -c "DISPLAY=:0.0 zenity --info --text='${STRMAIL}'" echo ${STRMAIL} | mail -s "${STRMAILSUB} ${EMAIL_TITLE}" ${EMAIL_TITLE} ${EMAIL} # synchronisation des données sync # ============================================================================================================================================================= # Demande de démontage du périphérique # => on démonte automatiquement car sinon HAL retournera une erreur come quoi c'est pas lui qui a monté ce péiphérique # => si on veut utiliser le disque après la sauvegarde il suffira de cliquer dessus sur l'IHM => HAL le montera => on pourra le démonter proprement ensuite # ============================================================================================================================================================= #su - ${USERNAME} -c "DISPLAY=:0.0 zenity --question --text='Sauvegarde terminée, démonter le disque ?'" #if [ $? = "0" ] #then # # démontage du volume externe à la fin de la sauvegarde # echo "Démontage du disque ${DESTMOUNTPOINT}" # umount ${DESTMOUNTPOINT} #fi # ============================================================================================================================================================= # Démontage automatique du périphérique echo "Démontage du disque ${DESTMOUNTPOINT}" umount ${DESTMOUNTPOINT} su - ${USERNAME} -c "DISPLAY=:0.0 zenity --info --text='Le périphérique a été démonté.'" # ============================================================================================================================================================= @] February 06, 2009, at 09:32 PM
by
- Changed lines 4-5 from:
* Tutoriel UDEV [[http://doc.ubuntu-fr.org/udev -> sur le forum Ubuntu]], il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''. * Post ''automatic usb-backup with udev-rules + script'' [[http://bbs.archlinux.org/viewtopic.php?id=32639 -> sur le forum archlinux.org]] to:
* Tutoriel UDEV [[sur le forum Ubuntu -> http://doc.ubuntu-fr.org/udev]], il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''. * Post ''automatic usb-backup with udev-rules + script'' [[sur le forum archlinux.org -> http://bbs.archlinux.org/viewtopic.php?id=32639]] February 06, 2009, at 09:32 PM
by
- Changed lines 4-5 from:
* Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''. to:
* Tutoriel UDEV [[http://doc.ubuntu-fr.org/udev -> sur le forum Ubuntu]], il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''. * Post ''automatic usb-backup with udev-rules + script'' [[http://bbs.archlinux.org/viewtopic.php?id=32639 -> sur le forum archlinux.org]] February 06, 2009, at 09:28 PM
by
- Changed line 4 from:
* Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''.\\ to:
* Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''. February 06, 2009, at 09:28 PM
by
- Changed lines 4-6 from:
Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''.\\ to:
* Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''.\\ * http://www.debian-administration.org/articles/126 * http://www.debian-administration.org/articles/127 February 06, 2009, at 09:27 PM
by
- Added lines 1-4:
! UDev !! Sources Tutoriel UDEV sur le forum Ubuntu : http://doc.ubuntu-fr.org/udev, il décrit de manière très détaillée et explicite le fonctionnement de ''udev'', 'sysfs''.\\ |