How to make an Ubuntu installation on external HDD boot on any system?

view full story

http://askubuntu.com – When installing Ubuntu 12.04 to an external HDD using Ubiquity, it installs GRUB2 to that HDD. Such installation works fine on the machine on which it was created, but on any other machine everything just hangs up after loading the initial ramdisk. The machine shows black screen and no disk activity goes on. I suspect this is caused by some configs being dependent on "global" device enumeration which is different on different machines, or something else gets machine-dependent. How do I avoid that? Shall I generate a more generic initial ramdisk somehow? Or perhaps using syslinux instead of GR (HowTos)