Could not run from usb (persistent)

Hello.

  1. I’ve written Parrot-security-4.7_x64.iso to my usb flash drive and created luks2 encrypted persistent volume on the empty space where I’ve created persistence.conf

When I try to boot into life mode it works fine and I can mount my encrypted partition using a key phrase. But when I try to boot in encrypted persistence mode I’m unable to unlock my persistent partition. Finally I’ve realised that parrot is asking my keyphrase of my computer encrypted drive. Parrot asks me to unlock /dev/sdb2, but my persisted volume is /dev/sdc3, as I’ve 2 drives on the workstation.

Unfortunatelly there is no option to choose /dev/name for this. How can I fix it?

  1. One of the reason why I’m trying to run parrot form usb drive is that I was not able to run it from my computer. Live parrot works just fine. I’m able to install it, but not able to boot.

Now I have got that these 2 problems have the same origin. I’ve 2 drives on the computer and parrot is hardcoded in such a strange way that it can not correctly configure grub while installed on 2 drives computer and cannot run with a persistence from usb flash drive.

Is it a way to work around this?

boot into live and run fdisk /dev/sdc from a terminal and hit D to delete the sdc3 then hit N to create a new partition it will make the sdc3 partition again then W to write it then close fdisk now

enter this to create encrypted persistence in a terminal as root user

For an encrypted partition use the following commands ::

cryptsetup --verbose --verify-passphrase luksFormat /dev/sdc3
cryptsetup luksOpen /dev/sdc3 my_usb
mkfs.ext4 -L persistence /dev/mapper/my_usb
e2label /dev/mapper/my_usb persistence
mkdir -p /mnt/my_usb
mount /dev/mapper/my_usb /mnt/my_usb
echo “/ union” > /mnt/my_usb/persistence.conf
umount /dev/mapper/my_usb
cryptsetup luksClose /dev/mapper/my_usb
reboot

It’s exactly what has been done from my main system except that I’ve used different key with cryptsetup.

So I did this (from inside parrot live)
deleted the sdc3, recreated

cryptsetup --verbose --verify-passphrase luksFormat /dev/sdc3
cryptsetup luksOpen /dev/sdc3 my_usb
mkfs.ext4 -L persistence /dev/mapper/my_usb
e2label /dev/mapper/my_usb persistence
mkdir -p /mnt/my_usb
mount /dev/mapper/my_usb /mnt/my_usb
echo “/ union” > /mnt/my_usb/persistence.conf
umount /dev/mapper/my_usb
cryptsetup luksClose /dev/mapper/my_usb
reboot

Finally I got the same error:
"please enter passphrase for /dev/sdb2

/dev/sdb2 - is my main linux installation EFI+luks encrypted everything
I’ve tested this live encrypted persistent parrot on another computer and got the same error “passphrase for sda5” - encrypted partition of the second computer

What is wrong?

when it shows please enter passphrase for /dev/sdb2
what happens if you press enter key on your keyboard or escape key ? does it skip to /dev/sdc3 ?

Finally it allwaus shows sdb2 which is my encrypted ssd.

I found the way to boot it correctly, but it’s not good.
I’ve disabled uefi boot in bios and boot parrot from usb flash drive. This time there were no picture but it asked me to decrypt sdb2 and sdc2. It “works”. But it’s so sloooow (i7 8gen, 32g ram, 50 Mbps write more than 100 read usb3 flash drive). Every click makes me to wait.

I do not know what is this. Why I’m unable to boot installed parrot as it’s not able to configure grub correctly?
Why parrot does not understand that there could be more than 1 encrypted partitions on the machine? Finally, why it’s so slow when uefi boot is disabled?

Is there any workaround or should I try to use something else?

The problem is the USB stick is /dev/sda , installing to the hard drive /dev/sdb

Even though the installer knew to install to /dev/sdb , it then tried to install grub to the MBR on /dev/sda , and failed. The workaround was to go back to the menu, try again, say NO to automatically install to MBR of first hard drive and manually tell it /dev/sdb .

Then everything worked.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.