94

I have a laptop running Windows 7 Ultimate. I have encrypted my drives using BitLocker. Now I have also installed Lubuntu along with Windows. But my encrypted drives are not visible in Linux. How can I fix this?

2
  • 6
    Hi Zeal, is your question answered sufficiently? If so, please pick an answer to close the question. Jan 13, 2012 at 19:49
  • There's a pretty detailed answer at askubuntu.com/a/617989/25639 too.
    – unhammer
    Apr 24, 2018 at 7:40

8 Answers 8

71

You can access BitLocker partition under Linux using Dislocker, an opensource driver which is using FUSE (or not).

For that, you need the file on a USB key (the one with the .bek extension) or the recovery password.

5
  • 6
    Fairly recent file dates, looks like it's being maintained. With write capabilities. Oct 21, 2013 at 23:04
  • It seems @Aorimn is mantaining a version on github: github.com/Aorimn/dislocker/tree/develop
    – adosaiguas
    May 21, 2014 at 0:29
  • 6
    @Aorimn if Bitlocker is a proprietary Microsoft encryption method... how is it you've managed to interface with it?
    – Ashley
    Feb 1, 2016 at 17:05
  • 1
    But i don't have any USB key or recovery password. I did not setup the encryption, it came encrypted from factory settings. Where do i find the key?
    – Youda008
    Sep 20, 2018 at 16:40
  • 3
    @Youda008 if it still boots, run manage-bde -protectors -get c: to retrieve the key - at your first available opportunity. Otherwise if it decides to stop booting one day (e.g. BIOS change), it will be unrecoverable.
    – mwfearnley
    Dec 11, 2019 at 8:50
40

Thanks to Aorimn, his solution worked for me. I'm fairly unexperienced with Unix, so it cost a few hours to figure it out. I thought I would describe the steps I took while my backup is running :)

My problem was that I could not boot Windows, and I needed a way to access my files on a Bitlocked partition. In order to do this, you need a bitlocker recovery password (8 groups of digits) and the ability to boot your system from USB.

  1. Download and install LiLi on an other Windows machine (Linux Live USB Creator)
  2. Start LiLi and have it download a lightweight ubuntu image. I chose Xubuntu.
  3. Install the image to your USB stick.
  4. Boot the problematic machine with the USB stick
  5. When you see the ubuntu boot screen, press a key.
  6. Under F6, set the following options: nomodeset, acpi=off, noacpi and nolacpi
  7. Boot ubuntu.
  8. Make a folder /media/windows and /media/mount.
  9. Download and extract dislocker
  10. sudo apt-get install libfuse-dev libmbedtls-dev
  11. change directory to the dislocker/src folder
  12. sudo make
  13. sudo make install
  14. change directory to /usr/bin
  15. sudo fdisk -l
  16. identify the partition which is bitlocked. Mine was /dev/sda1.
  17. sudo dislocker -r -V /dev/sda1 -p315442-000000-000000-000000-000000-000000-000000-000000 -- /media/windows (replace your own bitlocker key and source partition)
  18. change dir to /media/windows (use sudo -i if you can't access it)
  19. mount -o loop dislocker-file /media/mount
  20. You should now see your files in a mounted drive of the file manager.

Backups are fairly slow, but it might save some trouble if you do end up reinstalling windows. Good luck!

3
  • 6
    From the above steps I wasn't clear how dislocker is functioning, so here is the info, from the source "With FUSE, you have to give the program a mount point. Once keys are decrypted, a file named dislocker-file appears into this provided mount point. This file is a virtual NTFS partition, so you can mount it as any NTFS partition and then read from it or write to it."
    – xpt
    Feb 20, 2014 at 14:59
  • 4
    dislocker is now (as of Ubuntu 18.04) available in Ubuntu's repositories, so you can install it by running sudo apt install dislocker instead of building from source.
    – Dominik
    May 14, 2018 at 14:15
  • Is there a solution other than using dislocker? The problem is that dislocker requires compiling and (like virtually every other time I try) compiling fails.
    – Tensigh
    Aug 2, 2018 at 8:04
8

I just worked out a way to update Kali Linux and install dislocker.

Using Kali Linux 1.0.9a i386 bootable DVD

Edit "/etc/apt/sources.list" and add:

deb http://us.archive.ubuntu.com/ubuntu trusty main universe

Install programs using Terminal:

apt-get update"
apt-get install git libfuse-dev libpolarssl-dev # Continue through update text, allow services to restart if needed
git clone git://github.com/Aorimn/dislocker.git
cd /dislocker/src
make
make install

Find drive Bitlocker volume:

fdisk -l

Make folders in /mnt: tmp, dis.

Run dislocker:

dislocker -v -V /dev/<volume name> -p<Bitlocker key> -- /mnt/tmp

Check if file exists to confirm proper Bitlocker key:

ls /mnt/tmp

Should return dislocker-file if correct.

Mount volume:

mount -o loop,ro /mnt/tmp/dislocker-file /mnt/dis

Browse to /mnt/dis for access to files.

2
  • dislocker doesn't work in Kali Linux 2.0. When I try the make command, following output appears: > dislocker-fuse.c:35:19: fatal error: fuse.h: No such file or directory And manually handling ( apt-get install libfuse-dev ) > The following packages have unmet dependencies: libfuse-dev : > Depends: libselinux-dev
    – cagcak
    Aug 18, 2015 at 14:24
  • 1
    Great step-by-step instructions. Only thanks to this I learned that the dislocker command is not mounting itself (like sshfs or other things). May 11, 2018 at 7:37
7

CryptSetup has added experimental support for BitLocker as of version 2.3.0 (February 2020), which is available in Ubuntu's repos for 20.10 Groovy onwards, although support will likely improve in later versions.

To open a BitLocker device with a password, use:

sudo cryptsetup open --type=bitlk <device> <name>

or:

sudo cryptsetup bitlkOpen <device> <name>

To open the device with a key file, use:

sudo cryptsetup open --type=bitlk --key-file=/etc/cryptsetup-keys.d/<name>.key <device> <name>

To open the device at boot time, add the following to /etc/crypttab:

<name> PARTUUID=<part_uuid> /etc/cryptsetup-keys.d/<name>.key bitlk

Note:

If a keyfile is not specified, systemd-cryptsetup(8) will automatically try to load it from /etc/cryptsetup-keys.d/name.key and /run/cryptsetup-keys.d/name.key (Source).

So you may replace the path to the key file with - or none.

Possible parameter values:

  • device - /dev/sda1
  • name - windows
  • part_uuid - aaaaaaaa-1111-bbbb-2222-cccccccccccc (find PARTUUID with sudo blkid | grep BitLocker)

Now you can mount the device with the following command:

sudo mount /dev/mapper/windows /path/to/mount/point

Important note:

When setting up BitLocker on a device choose the option that encrypts the whole device (requires more time). The other option uses Encrypt-On-Write conversion model that makes sure that any new disk writes are encrypted as soon as you turn on BitLocker (data that existed on the device before encryption began can still be read and written without encryption) and is not supported by Cryptsetup.

You will get the following error when you try to open the device with Encrypt-On-Write conversion model:

BITLK devices with type 'encrypt-on-write' cannot be activated.

Cryptsetup Manual

Crypttab Manual

Cryptsetup 2.3.0 Release Notes

BitLocker configuration: known issues

Cryptsetup bitlk.c

1
  • 1
    Nice! I suspect this will become the most suitable answer at some point.
    – mwfearnley
    May 17, 2021 at 9:58
2

BitLocker is a proprietary, closed-source drive encryption system only supported by Windows. You'll have to remove BitLocker encryption if you want to access your Windows partitions from Linux.

See What is the difference between disabling BitLocker Drive Encryption and decrypting the volume? for instructions on doing so. It would be advisable to have a backup of your data completed first.

Once the drive is decrypted, you can use TrueCrypt instead; reading a System Encryption volume under Linux isn't supported by default, but someone has figured out a work-around. See How to use TrueCrypt®-encrypted Windows system drives on Linux.

At the very least, review the TrueCrypt documentation and more specifically, the list of supported OSes.

Yet another option is PGP Whole Disk Encryption. See PGP Whole Disk Encryption for Dual Boot Linux and Windows XP.

3
2

Please note that libpolarssl-dev can't be used, it has been supersede with libmbedtls-dev so use this instead:

sudo apt-get install libmbedtls-dev

Note: by the way, it was a success using live boot. I am able to read and write. Just follow above steps.

1

The only thing I've found that might help you is NVbit. It's an experimental fuse driver that allows you to access BitLocker volumes. It's still in an alpha state, and it looks like you'll have to compile the code yourself. It also only allows read-only access, and some things might not work. I think it's your best bet, though.

5
  • I agree this is probably your best bet at the current time.
    – Mark S.
    May 19, 2012 at 2:48
  • for those that downloaded extracted and installed dislocker, and find it to be a bit buggy, use this command while cd'd in the src folder. sudo make uninstall
    – blade19899
    Oct 12, 2012 at 16:58
  • @MichaelHampton NVbit: Accessing Bitlocker volumes from linux. Looks good to me.
    – SaintWacko
    Jan 7, 2013 at 14:25
  • How usable is it? Apart from "The code is in alpha state."", I also see "The research was done around an year ago.Work was stopped prematurely,Don't expect things in clean/finished shape." Moreover, It also only allows read-only access, while dislocker at least allows RW access. Any first-hand experience-user comment please?
    – xpt
    Feb 20, 2014 at 15:05
  • @xpt I don't have any experience with it, I just found it through Goole-Fu. I would recommend using Dislocker, as it's newer, and appears to be in much better state than what I found.
    – SaintWacko
    Feb 20, 2014 at 16:38
0

Hi If Anyone here not understanding this I have one LongCut Techinique.

  1. Download Vmware (can also install virtualbox which is free)and Windows 10/11 ISO (can also install win7,8)
  2. Then In VmWare Create new Virtual Machine with ISO
  3. after win Installation please connect your drive to this VM via VM tab in there
  4. Tada! enter your Bitlocker password and access the files.this Win can also be used for testing any other things on windows.

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.