grubby/boot/grub/persistent/docs/02_naming_convention

72 lines
2.7 KiB
Text
Raw Permalink Normal View History

2020-11-13 00:50:49 +01:00
2 Naming convention
*******************
The device syntax used in GRUB is a wee bit different from what you may
have seen before in your operating system(s), and you need to know it so
that you can specify a drive/partition.
Look at the following examples and explanations:
(fd0)
First of all, GRUB requires that the device name be enclosed with '('
and ')'. The 'fd' part means that it is a floppy disk. The number '0'
is the drive number, which is counted from _zero_. This expression
means that GRUB will use the whole floppy disk.
(hd0,msdos2)
Here, 'hd' means it is a hard disk drive. The first integer '0'
indicates the drive number, that is, the first hard disk, the string
'msdos' indicates the partition scheme, while the second integer, '2',
indicates the partition number (or the PC slice number in the BSD
terminology). The partition numbers are counted from _one_, not from
zero (as was the case in previous versions of GRUB). This expression
means the second partition of the first hard disk drive. In this case,
GRUB uses one partition of the disk, instead of the whole disk.
(hd0,msdos5)
This specifies the first "extended partition" of the first hard disk
drive. Note that the partition numbers for extended partitions are
counted from '5', regardless of the actual number of primary partitions
on your hard disk.
(hd1,msdos1,bsd1)
This means the BSD 'a' partition on first PC slice number of the
second hard disk.
Of course, to actually access the disks or partitions with GRUB, you
need to use the device specification in a command, like 'set root=(fd0)'
or 'parttool (hd0,msdos3) hidden-'. To help you find out which number
specifies a partition you want, the GRUB command-line (*note
Command-line interface::) options have argument completion. This means
that, for example, you only need to type
set root=(
followed by a <TAB>, and GRUB will display the list of drives,
partitions, or file names. So it should be quite easy to determine the
name of your target partition, even with minimal knowledge of the
syntax.
Note that GRUB does _not_ distinguish IDE from SCSI - it simply
counts the drive numbers from zero, regardless of their type. Normally,
any IDE drive number is less than any SCSI drive number, although that
is not true if you change the boot sequence by swapping IDE and SCSI
drives in your BIOS.
Now the question is, how to specify a file? Again, consider an
example:
(hd0,msdos1)/vmlinuz
This specifies the file named 'vmlinuz', found on the first partition
of the first hard disk drive. Note that the argument completion works
with file names, too.
That was easy, admit it. Now read the next chapter, to find out how
to actually install GRUB on your drive.