1

EDIT: This issue is now resolved. For detailed instruction how to remove full disk encryption, please see the "Can I disable full-disk encryption?" topic, there you can find a step by step instruction how to remove full-disk encryption. https://askubuntu.com/questions/245112/can-i-disable-full-disk-encryption/412737#412737

==

I am trying to remove whole drive encryption from my Ubuntu installation. I've run Ubuntu from Live CD, mounted crypt partition and copied it to another partition /dev/sda3.

sudo cryptsetup luksOpen /dev/sda5 crypt1
sudo dd if=/dev/ubuntu-vg/root of=/dev/sda3 bs=1M

After that I've run boot-repair: https://help.ubuntu.com/community/Boot-Repair

Added entry to /etc/fstab:

UUID=<uuid> /  ext4 errors=remount-ro 0 1

Of course I've replaced with blkid result of my /dev/sda3. I've also deleted overlayfs and tmpfs lines from /etc/fstab. (I've just compared it to content of /etc/fstab in non-encrypted Ubuntu installation and could not find overlayfs and tmpfs).

I've chrooted from LiveCD into my system and rebuilt initramfs: http://blog.leenix.co.uk/2012/07/evmsactivate-is-not-available-on-boot.html

I've also removed cryptsetup using apt-get remove.

Basically I can easily mount my system partition from Live CD (without setting up the encryption and LVM stuff), but can not boot from it. Instead I see:

cryptsetup: evms_activate is not available

When I've chosen the Recovery mode I've seen this:

Begin: Mounting root file system ...
Begin: Running /script/local-top ...
Reading all physical volumes.
This may take a while ...
No volume groups found
cryptsetup: evms_activate is not available
Begin: Waiting for encrytpted source device ...

My /etc/crypttab is empty.

I am pretty sure that system tries to find encrypted partition, search for LVMs etc.

Do you have ideas what could be the problem or how can I fix it?

Thanks

1

I had the same problem and finally solved

The problem seems to be in update-initramfs that doesn't generate the initrd properly.

"evms_activate not found" means that the /sbin/evms_activate file is not created inside the initrd file by update-initramfs

So, my workaround consists in unpacking the not working initrd, and copy the evms_activate executable into /sbin/ from a working initrd file (probably getting one from a deb file of debian/ubuntu repositories), and packing initrd again.

In my case, I made the following steps.

We create two folders:

mkdir NOT_WORKING
mkdir WORKING

We copy the corrupted initrd to NOT_WORKING folder (in my case "initrd.img-3.4.94") and the working to WORKING (in my case "initrd.img-3.8.0-31-generic").

cp /boot/initrd.img-3.4.94 NOT_WORKING
cp initrd.img-3.8.0-31-generic WORKING

Unpack both initrd:

cd NOT_WORKING
mv initrd.img-3.4.94 initrd.img-3.4.94.gz
gzip -d initrd.img-3.4.94.gz
cpio -id < initrd.img-3.4.94
cd ..
cd WORKING
mv initrd.img-3.8.0-29-generic initrd.img-3.8.0-29-generic.gz
gzip -d initrd.img-3.8.0-29-generic.gz
cpio -id < initrd.img-3.8.0-29-generic
cd ..

We copy evms_activate

cp WORKING/sbin/evms_activate NOT_WORKING/sbin/evms_activate 

And we pack initrd again

cd NOT_WORKING
mv initrd.img-3.4.94 .. #We don't want to pack an older initrd into the newer :p
find . | cpio --quiet -H newc -o | gzip -9 -n > /boot/initrd.img-3.4.94

Now the evms_active error should dissappear :)

0

Above problem: cryptsetup: evms_activate is not available was happening because I've didn't mount /boot partition properly before chrooting.

mount /dev/sda1 /mnt/boot
chroot /mnt /bin/bash

As a result my /boot on /dev/sda3 was rebuilt by update-initramfs command:

update-initramfs -u -k all

However during boot the /dev/sda1 /boot was used, with old initramfs.

EDIT: I've updated the "Can I disable full-disk encryption?" topic, there you can find a step by step instruction how to remove full-disk encryption. https://askubuntu.com/questions/245112/can-i-disable-full-disk-encryption/412737#412737

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.