I just did an upgrade from F14 to F16...
I'm new to this systemd stuff and have no clue how to get working what worked fine under F14.
It appears systemd is doing things in the wrong order.
I have a raid on /dev/md0 which is encrypted using a keyfile.
My /etc/crypttab has
Code:
encrypt_storage /dev/md0 /mnt/usbkey/storage.key cipher=aes-cbc-essiv:sha256,size=256,hash=sha1
Once that is unlocked (luksOpen), there is an LVM on the device
Code:
PV /dev/mapper/encrypt_storage VG encrypt_storage_vg lvm2 [2.05 TiB / 1.05 TiB free]
And finally my /etc/fstab:
Code:
LABEL=evmstore /evmstore ext4 defaults 0 0
I also have a '/etc/sysconfig/modules/use_storage.modules' which mounts the /mnt/usbkey
This worked fine under F14. With F16, the system dumps to emergency mode. If I press 'Ctrl-D' to continue, everything is fine.
From dmesg:
Code:
[ 27.427226] systemd-cryptsetup[974]: crypt_init() failed: Block device required
[ 27.427601] systemd[1]: cryptsetup@encrypt_storage.service: main process exited, code=exited, status=1
[ 27.461081] systemd[1]: Job cryptsetup.target/start failed with result 'dependency'.
[ 27.461088] systemd[1]: Job dev-mapper-encrypt_storage.device/start failed with result 'dependency'.
[ 27.461115] systemd[1]: Unit cryptsetup@encrypt_storage.service entered failed state.
This is failing because it is trying to parse and process /etc/crypttab BEFORE its started /dev/md0. How would I fix this?
I'm not opposed to doing this some other way, but I cannot figure out systemd or how to determine and declare dependencies.
Do I somehow override and edit the cryptsetup.target to specify a requires or after/before of the md0? Is the syntax dev-md0.device?
Do I need to tell it that it also requires my mnt-usbkey.mount?
Thanks for any help getting this working. I just don't have an understanding of how systemd really works in Fedora beyond the high level abtract stuff mentioned in the man pages concerning units and targets, etc.