====== Règle udev pour monter une clef encryptée automatiquement ======
===== identification de la clef =====
sudo udevadm info -a -n /dev/sdd
sudo udevadm info --query=property --name /dev/sdX
===== Règle udev =====
ACTION=="add", SUBSYSTEMS=="usb", SUBSYSTEM=="block", ENV{ID_MODEL}=="FLEXXON_256GB", RUN{program}+="/usr/local/bin/msm-ng_mount.sh"
===== Script exécuté au branchement =====
#!/bin/bash
#DEVNAME="/dev/sdc"
echo "New usb device detected at $DEVNAME"
echo "mount $DEVNAME /tmp/disk"
if [ ! -d "/tmp/disk" ]; then
mkdir /tmp/disk
fi
echo "mmsi123" | /usr/bin/cryptsetup open --type plain $DEVNAME msm
systemd-mount -t ext3 /dev/mapper/msm /tmp/disk
''systemd-mount'' doit être utilisé à la place de ''mount''. C'est très important. Sinon, la clef n'est pas montée.
===== Pour tester la règle udev sur la clef =====
sudo udevadm control --reload
sudo udevadm test $(udevadm info -q path -n /dev/sdd)
===== Insertion / retrait "logique" de la clef =====
echo '1-4.3' > /sys/bus/usb/drivers/usb/bind
echo '1-4.3' > /sys/bus/usb/drivers/usb/unbind
Ou 1-4.3 correspond au KERNELS
...
looking at parent device '/devices/pci0000:00/0000:00:15.0/usb1/1-4/1-4.3':
KERNELS=="1-4.3"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{bMaxPower}=="300mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
...