Originally published on eve.gd on 8 August 2011, last updated 6 September 2026.
Read this post on the web (with images, PDF and citation details)
The other day I was installing Xubuntu 10.10 onto an old Mac G4 Powerbook and got the keyboard layout wrong. I had encrypted the entire disk and so, with the keyboard mapped entirely incorrectly ("j" was enter), I was unable to unlock the disk to continue.
To solve this, I booted off the alternate CD and entered a recovery shell, hoping this would ask me to unlock the disk. Sadly, no luck, it dumped me to a minimal BusyBox command shell to work out the unlock procedure myself. Here's how I did it. Please note, I can take no responsibility if these instructions cause damage to your system; they didn't for me, but if you don't know what you are doing, you could lose data.
Many of these instructions are derived from the Debian crypto rescue document.
Execute the following commands in the rescue prompt. One or more may fail, this shouldn't matter.
anna-install crypto-modules depmod -a modprobe dm-mod modprobe aes
Use fdisk (or on a Mac, parted/pdisk) to ascertain which is your root partition. You'll also need to determine your boot partition. I'm not going to go into details here as, if you don't know how to do this, you need to read more before you can safely complete this guide.
Assuming your encrypted partition was hda4:
cryptsetup luksOpen /dev/hda4 hda4_crypt
lvdisplay | grep "LV Name"
This produces an output like this:
LV Name /dev/myhost/root LV Name /dev/myhost/home LV Name /dev/myhost/swap_1
As the group name is "myhost" in the above example (it will be different for you), enable the logical volume with:
vgchange -a y myhost
Obviously substituting "myhost" for the group and "sda1" for your boot partition
mkdir /target mount /dev/myhost/root /target mount /dev/myhost/home /target/home mount /dev/sda1 /target/boot mount proc /target/proc -t proc mount sysfs /target/sys -t sysfs
Check that /target/etc/crypttab contains the correct name (in this example "myhost"). If it doesn't:
dmsetup rename myhost name_according_to_crypttab
Finally:
chroot /target
and if you want to reconfigure the keyboard, my entire reason for doing this:
dpkg-reconfigure console-setup
Featured image by joncallas under a CC-BY license.
This reference list has been generated, in many cases, through an automated process and may therefore contain errors or incomplete metadata. It is provided purely as assistance for finding the items mentioned within this post.
1. Callas, Jon, ‘Jon Callas’, Flickr <http://www.flickr.com/photos/joncallas/>
2. Debian wiki: LUKS crypto rescue guide <http://wiki.debian.org/DebianInstaller/Rescue/Crypto>
http://www.flickr.com/photos/joncallas/
http://wiki.debian.org/DebianInstaller/Rescue/Crypto