I have an external hard drive which contains three primary partitions, two of them with an Ubuntu flavor each (14.04, 16.04), and the third contains just data. There is also an extended partition with a Windows 7, another Ubuntu, and a Swap partition, each one with its own partition. The reason for this mess is basically me wanting to have bootable backups of older systems where some of my work resides. The partitions in the extended partition have been pasted from an internal drive (copy and paste through GParted). Now I would like to have GRUB in a such way that I can boot into any of the o.s.'s, if a need arises.
To install GRUB I have followed this post using a live USB: How do I run update-grub from a LiveCD? I've installed it on the first primary partition which contains an Ubuntu 14.04.
The GParted view of the partitions in the external drive:
What happens when I follow these steps is that the GRUB listings contain also the bootable partitions from the internal drive. If I let it boot from the default listing (the first in the list) it will give the error below, but still boots. If I try any other listing again, it gives the same error as below:
attempt to read or write outside of disk hd0. press any key to continue. After pressing a key, it returns to boot menu, and won't even boot from default listing.
Any insights of what could be going wrong or what I could try? What I want is to have GRUB installed in external drive, showing listings based only on bootable partitions of that external drive.
UPDATE 1:
The blkid gives the following: blkid_out
The contents of the grub.cfg file: grub.cfg
