--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/99-autoluks-local.rules Fri Jan 09 11:37:58 2015 +0100
@@ -0,0 +1,2 @@
+# -> /etc/udev/rules.d/99-autoluks-local.rules
+SUBSYSTEM=="block", ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="/usr/local/sbin/autoluks"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Makefile Fri Jan 09 11:37:58 2015 +0100
@@ -0,0 +1,5 @@
+all:
+
+install:
+ install -m 644 99-autoluks-local.rules /etc/udev/rules.d/
+ install -m 755 autoluks /usr/local/bin/
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/autoluks Fri Jan 09 11:37:58 2015 +0100
@@ -0,0 +1,10 @@
+#! /bin/sh
+test -f /etc/crypttab || exit 0
+mapped_dev=$(perl -ne '/^(\S+)\s+UUID='${ID_FS_UUID_ENC?}'/ and print $1' </etc/crypttab)
+test "$mapped_dev" || exit 0
+
+case "${ACTION?}" in
+ add) cryptdisks_start $mapped_dev ;;
+ remove) cryptdisks_stop $mapped_dev ;;
+esac
+exit 0