I tried removing LUKS encryption on my home directory using the following command:

cryptsetup luksRemoveKey /dev/mapper/luks-3fd5-235-26-2625-2456f-4353fgdgd

But it gives me an error saying:

Device /dev/mapper/luks-3fd5-235-26-2625-2456f-4353fgdgd is not a valid LUKS device.

Puzzled, I tried the following:

cryptsetup status luks-3fd5-235-26-2625-2456f-4353fgdgd

And it says:

/dev/mapper/luks-3fd5-235-26-2625-2456f-4353fgdgd is active and is in use.
type: LUKS1
cipher: ...

It seems the encrypted device is active, but not valid. What could be wrong here?

  • Backup
  • Reformat
  • Restore

cryptsetup luksRemoveKey would only remove an encryption key if you had more than one. The encryption would still be there.

The Fedora Installation_Guide Section C.5.3 explains how luksRemoveKey works.

That it's "impossible" to remove the encryption while keeping the contents is just an educated guess. I base that on two things:

  • Because the LUKS container has a filesystem or LVM or whatever on top of it, just removing the encryption layer would require knowledge of the meaning of the data stored on top of it, which simply is not available. Also, a requirement would be that overwriting a part of the LUKS volume with its decrypted counterpart, would not break the rest of the LUKS content, and I'm not sure if that can be done.
  • Implementing it would solve a problem that is about as far away from the purpose of LUKS as you can get, and I find it very unlikely that someone would take the time to do that instead of something more "meaningful".
  • How did you know that? Any references? – Question Overflow Jan 11 '13 at 15:34
  • Added reference to Fedora Installation Guide and why I believe backup-restore is the only option for going from full-disk-encryption to no-encryption. – MattBianco Jan 11 '13 at 16:07

Firstly, when removing a passphrase from a LUKS partition, you need to specify the disk partition where it resides, like:

cryptsetup luksRemoveKey /dev/sda2

And when you want the status from a LUKS-encrypted device, you need to refer to the LUKS-name, as you did.

But luksRemoveKey only removes one of the passphrases (and never the last one). If you want to permanently decrypt, you have to use cryptsetup-reencrypt:

cryptsetup-reencrypt --decrypt /dev/sda2

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.