Thursday, April 3, 2008

GRUB limitations

I am not sure if this is a shortcoming of just the boot loader or something more intrinsic to linux.
The partition nomenclature used in Linux has a serious limitation when it comes to migrating hard disks. A hard disk is named differently based on the channel which it is connected to. To elucidate : a hard disk connection to the primary IDe channel, as master is hda. Strangely, if the same hard disk is made slave (even if there is no master in the same channel), it gets labelled hdb. Similarly, there is a sdx series to denote SATA drives, though I am sure I have come across this naming even when PATA drives are used.
This is not just a source of confusion, it also makes migrating hard disks difficult. A drive that is hdc in one system, has to be installed as master in the secondary IDE channel of another system if it has to be booted. Since the GRUB menu entries use hda, hdb etc notation the menu entries are rendered unbootable if the drive is loaded on some other channel.

In comparison, Windows uses a more user friendly nomneclature. Atleast a bootable hard disk will work in any system irrespective of its channel status.

No comments: