Mapping Ubuntu LUKS root encrypted volume under Windows 11

After ruining my Ubuntu Mate (22.04) I needed to access it's from within Windows 11. Having a LUKS full disk encryption in place, it took me awhile to understand how to make my internal Linux root filesystem available in Windows

Assuming you already have Ubuntu with WSL 2 - no extra 3rd party software required:

Connect your drive to USB and let's go.

Within Power Shell running with Administrator privileges:

Find the name of your Windows device with:

GET_CimInstance -query "SELECT * fro Win32_DiskDrive"

Mount the drive without specifying filesystem:

wsl --mount \\.\PHYSICALDRIVE1 --bare

Within Ubuntu WSL 2

List your Linux block devices

$ lsblk

Find your LUKS partition by running

$ sudo file -s /dev/XXX

for every partition

only LUKS partition will return:

sudo file -s /dev/sdd3
/dev/sdd3: LUKS encrypted files, ver 2 [, , sha256] UUID: XXXX

Create a mounting point

$ sudo mkdir /mnt/wsl/luks-drive

Open LUKS partition (mine was sdd3):

$ sudo wsl cryptsetup luksOpen /dev/sdd3 luks-device

(You can try all partitions, only LUKS one will actually succeed).

Find LUKS volume group:

$ sudo vgdisplay --short
"vgubuntu-mate" ...

List logical volumes:

$ sudo lvs -o lv_name -S vg_name=vgubuntu-mate
LV
root
swap_1

Activate root logical volume

$ sudo lvchange -ay vgubuntu-mate/root

list drive devices

$ sudo fdisk -l

The last device (i.e. /dev/dm-1) is probably what we are looking for

Mount this device to previously created mount point:

$ sudo mount /dev/dm-1 /mnt/wsl/luks-drive

Going back to Windows

In file explorer go to \wsl$\Ubuntu\mnt\wsl\luks-drive to find your LUKS root filesystem.