Mac OS X : launchd et détection des périphériques amovibles

Boris HUISGEN
|
Le système launchd de Mac OS X (10.4 et +) permet de détecter le branchement d’un volume amovible (clé USB, disque dur, etc). Un script particulier peut donc être lancé suite à cette détection pour lancer une copie de vos documents ou une sauvegarde (rsync ou autre).
Par exemple, ce service launchd permet de lancer automatiquement le script shell usb-hotplug au branchement du volume USB:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>fr.hbis.usb-hotplug</string>
<key>Program</key>
<string>/Users/bhuisgen/Library/Scripts/usb-hotplug</string>
<key>ProgramArguments</key>
<array>
<string>usb-hotplug</string>
</array>
<key>WatchPaths</key>
<array>
<string>/Volumes/USB</string>
</array>
</dict>
</plist>
Le script à exécuter est référencé par l’option Program ; quant au volume à détécter il s’agit de l’option WatchPaths, la forme pluriel confirmant que plusieurs volumes peuvent être détectés par le même service.
Pour lancer ce service, la commande est la suivante :
$ sudo launchctl load -w fr.hbis.usb-hotplug