I replaced the internal HDD of my Lenovo Z570 by an SSD drive. Then I put the HDD in an external case and tried to boot it over usb; but the BIOS of my PC does not recognize it as bootable and just tries to boot the next entry in boot priority.
As it would not be a huge problem to boot from grub of the ssd, I booted into the Archiso live system and installed the bootloader:
grub-install --target=i386-pc --recheck --debug /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
It copies some files and reports success (or at least says that there was not error).
But, when I try to boot the internal SSD, it is the same as with the external HDD: the bios does not recognize it as bootable and can not find a bootloader in MBR.
Does anyone have an idea what the problem is? Especially I do not have an explanation why the external HDD is not bootable as it was when it was internal.
My system on the SSD is ArchLinux (I copied the files of the system partition from the old HDD). From the external HDD, I want to boot the manufacturer Windows, as I need it for some hardware-specific configurations that are not possible from Linux (and only for that, so I really do not want to have it waste SSD-space).
EDIT: Solved by installing grub without chrooting to system, then booting the system and installling grub again from there.