I've got a system with LUKS partitions. I'd like to convert them to LUKS2 to see if I can simplify my setup using partition labels.
When I run cryptsetup convert <partitionNode> --type LUKS2 it seems to work correctly
# cryptsetup convert <partitionNode> --type luks2 WARNING! ======== This operation will convert <partitionNode> to LUKS2 format. Are you sure? (Type uppercase yes): YES But then when I attempt to unlock the volume it breaks:
# /usr/local/bin/unlock_password.sh | cryptsetup -v luksOpen <partitionNode> PartB Command failed with code -1 (wrong or missing parameters). Converting back to LUKS 1 fixes it
# cryptsetup convert <partitionNode> --type luks1 WARNING! ======== This operation will convert <partitionNode> to LUKS1 format. Are you sure? (Type uppercase yes): YES # /usr/local/bin/unlock_password.sh | cryptsetup -v luksOpen <partitionNode> PartB Key slot 0 unlocked. Command successful. Does anyone know why this could happen? It looks like the conversion didn't run correctly on the keyslot, or maybe the input handler is different for LUKS2 and it can't accept my (large, base64) password.
My old version of cryptsetup is 2.0.4 if that matches up with known bugs.
PS. I have also added a second key-slot with a new random key file. It also stops working when I convert to LUKS2 so it looks like, with my current environment, I cannot convert to LUKS2.
cryptsetup luksDumpbefore and after conversion...