This page is a short introduction to the naming of hard drives and partitions in Puppy Linux for people who are familiar with Windows and XP. In Puppy Linux the hard drive naming conventions are different from the Windows conventions.
This table is a short summary of the naming conventions for hard drives:
Puppy..............................................Windows
/dev/hda.....IDE Primary Master............Generally Windows hard drive 'C'
/dev/hdb.....IDE Primary Slave..............Generally Windows hard drive 'D' athough often 'D' is the CD-ROM
/dev/hdc.....IDE Secondary Master........Generally Windows hard drive 'E'
/dev/hdd.....IDE Secondary Slave..........Generally Windows hard drive 'F'
The naming of disk drives and partitions by Linux and Windows can be confusing. Linux uses names like hda1, hda2..n, hdb1, hdb2..n, (where 2..n means 2 or 3 or 4 and so on) etc. Windows uses names like C, D, E, etc. You might think Linux hda1 corresponds to Windows drive C and you'd probably be correct. But, if you think Linux hda2 corresponds to Windows D, you'd probably be wrong. Windows D might be your CD-ROM drive and Linux hdb1 might correspond to Windows E. Confusing.
For detailed information, look here:
http://linux.org.mt/article/partnames∞
http://linuxselfhelp.com/HOWTO/mini/Partition/∞
Still confused? I am. (And we haven't even mentioned MounTing.) Perhaps the easiest solution is PHOME=hda1 and pray. On my system, Windows D is Linux hdb1. I don't want to risk damage to my Windows C drive. If you feel the same, I suggest you put your Puppy Linux files on a Windows drive after C, such as D, E, etc. I think it most safe to use the first partition on a second disk drive. Then experiment with PHOME specifications in this sequence: hdb1, hdc1, hdb2..5, hdc2..5, hda2..5, etc. I have two disk drives and avoid any references to my first disk drive -- that's where my Windows C resides and I still need (sigh) Windows for business purposes.
In my experience I've had many partitions on many drives at once, under windows 95, and for quite a while it seemed a mystery as to how windows would choose which drive letter to assign to which disk/partition. This is what I've learn about windows drive letter assignment when the volume does not contain "volume descriptor information" (a windows NT thing)
Make a list of all partitions start with all hard disk partitions that match "primary partition" and "FAT", going through first,second,third,fourth IDE controllers master first, then slave, where on a single disk of multiple "primary partitions that are fat, first choose the one marked "active", then the rest in partition order.
Step two, append to the list all other "fat partitions", i.e. those in extended partitions, following the sequence through first,second,third,fourth IDE controllers master first, then slave.
Attach to each partition in that list a sequential drive letter, starting with "C".
Thus if you insert a new "FAT" partition in the list (by changing a partitions type from say linux to FAT, or resize and format the new space to FAT, or plug in a new disk and format to FAT) all the ones after it in the list, with the way the list is generated, will have changed drive letters. Too bad if you installed apps to a drive and the registry now points to the wrong drive letter for your start menu icons.
Yes its much easier to format the whole of a hard disk into a single partition, but these days with a 300Gb hard disks, you're never going to use it all in Puppy! you're going to want to partition!
I hope my this information helps you out when planning to change FAT partitions and you still use old Windows 95,98 & ME.
NT & XP are much more complex fish in that you can explicitly choose where to mount disks, and partitions to any drive letter, but that info is stored on each disk in the "Volume descriptor information" directory, so dont move disks between computers you may end up with a conflict, e.g. if you have two C disks, windows booting up may choose to partially boot one disk, then finish booting off the other! Remember when Tuvok and Nelix beamed back to Voyager holding Gene splitting orchids, and they arrived in one body, I've seen that happen with Microsoft Windows (r) (tm).
tehehehehe I laugh now that I have Linux :-)
You can install XP to a blank partition on a second drive, but if there are FAT partitions on the first drive the chosen drive letter for XP's new home will be as described above, and not necessarially C, it may be D or E or F or another letter depending on where you install to, and what partitions you already have.
Sometimes I think it is just far simpler to install Linux and learn how to use a bash shell.
Jesse
-- JesseLiley (2005-05-31 07:35:02)
It might be helpful to see your "Microsoft System Information" using the Windows 98 "System Information" program. Do: Start - Porgrams - Accessories - System Tools - System Information. Select Components - Storage - Advanced System Information; scroll to the bottom; note the sequence of drives:
On one system (drive C is hdb1 and drives D,E,F,G are hdb5,6,7,8):
HL-DT-ST CD-RW GCE-8526B ... CDROM
ST340014 A ... Disk Drive ... drive letters CDEFG
GENERIC NEC FLOPPY DISK ... Disk Drive
On another system (drive C is hda1 and drive D is hdb1):
GENERIC IDE DISK TYPE47 ... Disk Drive ... drive letters C
GENERIC IDE DISK TYPE47 ... Disk Drive ... drive letters DEFG
BACKPACK CD-REWRITER-4B ... CDROM
_NEC DVD+RW ND-1000A ... CDROM
GENERIC NEC FLOPPY DISK .... Disk Drive
I'm guessing, but it seems the sequence determines the "hd" letter.
Grub starts it’s notation from zero, 0, it also uses the hd convention but does things slightly different.
For the first hard drive Grub shows hd0, for the second, hd1 etc.
Partitions also start at zero, so first hard drive - first partition is hd0,0 .
For Grub to recognize this it must be enclosed in parens, i.e. (hd0,0).
See GrubPuppyBoot for more about the way Grub sees things.
No matter how your drive is partitioned, or whether it is mounted, the whole raw device is always accessible in Linux. For example:
hexdump /dev/hda
from the command line will start showing your drive contents in raw form, from the beginning (use CTRL-D or CTRL-C to abort).
Categories: CategoryDocumentation