This is how I managed to shrink an encrypted LUKS volume with ext4 filesystem on Linux
- backup data (seriously)
-
overshrink the ext4 filesystem by a few more GB than needed
cryptsetup luksOpen /dev/sdc1 edataumount /dev/mapper/edatae2fsck -f /dev/mapper/edataresize2fs -p /dev/mapper/edata 300G
cryptsetup luksClose edata- truncate LUKS volume using
fdiskorgdiskto e.g. 320 GB cryptsetup luksOpen /dev/sdc1 edata- grow the ext4 filesystem back to 100 %