From 5ee69f0b54d301c74553fcc0ebc360110a3d1205 Mon Sep 17 00:00:00 2001 From: Victor Lowther Date: Sat, 21 Feb 2009 08:24:39 -0800 Subject: [PATCH] Make cryptroot handling act as a real producer/consumer. This should handle the case of having more than one encrypted block device on the system as best we can right now. --- hooks/cryptroot.sh | 11 +++++++---- rules.d/63-luks.rules | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/hooks/cryptroot.sh b/hooks/cryptroot.sh index 0664f245c..739f5d314 100755 --- a/hooks/cryptroot.sh +++ b/hooks/cryptroot.sh @@ -1,7 +1,10 @@ #!/bin/sh -[ -f /cryptroot ] && { - echo "Encrypted root detected." - read cryptopts /cryptroot + udevadm control --start_exec_queue udevadm settle --timeout=30 } diff --git a/rules.d/63-luks.rules b/rules.d/63-luks.rules index 4d6a37972..802ea062e 100644 --- a/rules.d/63-luks.rules +++ b/rules.d/63-luks.rules @@ -8,6 +8,6 @@ SUBSYSTEM!="block", GOTO="luks_end" ACTION!="add|change", GOTO="luks_end" KERNEL!="sr*", IMPORT{program}="vol_id --export $tempnode" -ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="/bin/sh -c 'echo $env{DEVNAME} luks-$env{ID_FS_UUID} >/cryptroot'" +ENV{ID_FS_TYPE}=="crypto_LUKS", RUN+="/bin/sh -c 'echo $env{DEVNAME} luks-$env{ID_FS_UUID} >>/cryptroot'" LABEL="luks_end" -- 2.47.3