32 lines
1.4 KiB
Diff
32 lines
1.4 KiB
Diff
|
From ab9b04f55bb9917749e9ddb52ce8f5f1ef56af99 Mon Sep 17 00:00:00 2001
|
||
|
From: Harald Hoyer <harald@redhat.com>
|
||
|
Date: Thu, 4 Apr 2013 12:54:59 +0200
|
||
|
Subject: [PATCH] crypt/parse-crypt.sh: create udev rule for systemd
|
||
|
|
||
|
Start the systemd-cryptsetup@luks-*.service for the detected crypto_LUKS
|
||
|
device in the initqueue, so we block in the initqueue and wait for the
|
||
|
password entry.
|
||
|
---
|
||
|
modules.d/90crypt/parse-crypt.sh | 8 ++++++++
|
||
|
1 file changed, 8 insertions(+)
|
||
|
|
||
|
diff --git a/modules.d/90crypt/parse-crypt.sh b/modules.d/90crypt/parse-crypt.sh
|
||
|
index d61220c..4cb281b 100755
|
||
|
--- a/modules.d/90crypt/parse-crypt.sh
|
||
|
+++ b/modules.d/90crypt/parse-crypt.sh
|
||
|
@@ -27,6 +27,14 @@ else
|
||
|
printf -- '--name cryptroot-ask-%%k %s ' $(command -v cryptroot-ask)
|
||
|
printf -- '$env{DEVNAME} luks-$env{ID_FS_UUID} %s"\n' $tout
|
||
|
} >> /etc/udev/rules.d/70-luks.rules.new
|
||
|
+ else
|
||
|
+ {
|
||
|
+ printf -- 'ENV{ID_FS_TYPE}=="crypto_LUKS", '
|
||
|
+ printf -- 'ENV{ID_FS_UUID}=="*%s*", ' $luksid
|
||
|
+ printf -- 'RUN+="%s --unique --onetime ' $(command -v initqueue)
|
||
|
+ printf -- '--name systemd-cryptsetup-%%k %s start ' $(command -v systemctl)
|
||
|
+ printf -- 'systemd-cryptsetup@luks$$(dev_unit_name -$env{ID_FS_UUID}).service"\n'
|
||
|
+ } >> /etc/udev/rules.d/70-luks.rules.new
|
||
|
fi
|
||
|
|
||
|
uuid=$luksid
|