Occationally grub doesn't seem to work properly because of a Windows update or grub was not properly installed during Parrot's install and so on.

1) The first step is to boot live using a bootable USB key of Debian or ParrotOS. Boot on it, and then open a terminal.

2) In the terminal type:

sudo -i 

fdisk -l

The fdisk command will show your partition scheme, you have to identify 2 things (only one for those using legacy instead of uefi)

Let's say my system partition is /dev/sda2 and my EFI partition is /dev/sda1. Your partition "name" might be different (e.g.nvme01 etc), just replace mine with yours in the command shown below.

3) Now you have to mount the partitions

mount /dev/sda1 /mnt
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
mount --bind /dev /mnt/dev

Those that have Legacy instead of EFI can go to step 4) For EFI there is one extra step: Mount your EFI partition mount /dev/sda1 /mnt/boot/efi

Sometimes errors like this can result: mount: /mnt/boot/efi: mount point does not exist. To solve it create the efi directory in /mnt/boot/ using this command:

mkdir /mnt/boot/efi

then try to mount the efi partition again.

4) Now we have to chroot into the system

chroot /mnt

Now that you are in you can just install the grub by typing the command below (grub-install will ask for the disk, not a partition so don't put any number like this: sda instead of sda1

grub-install /dev/sda

Then if no errors are found you can just exit by typing:

exit

and reboot the system. Once the system is rebooted, run update-grub to be sure that any other OS is detected by the grub. sudo update-grub

Written by KileXt

If you run into any issues please post in support on the forum.

 

Using Parrot | Troubleshooting | Linux Beginner Guide | Home