Top Five Open Source Packages for System Administrators
Pages: 1, 2
Some GRUB Recipes
We're now ready to look at the GRUB configuration file (grub.conf). Here are some sample lines from its first, general section:
# general section
splashimage (hd0,0)/grub/splash.xpm.gz Pretty picture behind the menu.
default 0 Default boot entry (numbering starts at 0).
timeout 30 Menu timeout period in seconds.
password -md5 xxxxxxx Use grub-md5-crypt to encode password.
These lines specify the image displayed behind the boot menu, the menu timeout period and default entry to boot, and the boot password.
The remainder of the file specifies the items on the boot menu. Here are two examples that boot the Linux operating system on the first partition on the first hard disk (selecting different kernels):
title Linux
root (hd0,0)
kernel /vmlinuz ro root=/dev/hda2
initrd /initrd.img
title Test-Linux
root (hd0,0)
kernel /vmlinuz-test ro root=/dev/hda3
initrd /initrd.img-test
The title lines indicate the menu item text. The root lines
specify the partition where the boot loader is located. All directory
references are assumed to be relative to the root of this partition. Thus, the
location of the vmlinuz files specified in the kernel lines is in
the root directory of this partition.
The kernel lines specify the path to the Linux kernel in each case,
along with any parameters to be passed to it. In this case, a separate /boot
partition is being used, so the root parameter is passed to the
kernel; the latter indicates the location of the system root directory (such as /). Thus, we can tell that the kernel images reside at /boot/vmlinuz*
from the point of view of the booted Linux system. The initrd lines
similarly specify the path to the initrd.img file (if used).
Booting FreeBSD is also very simple:
title FreeBSD
# use the 1st BSD subpartition in disk 1 partition 3
root (hd0,2,a)
kernel /boot/loader
|
Related Reading
Essential System Administration Pocket Reference |
This stanza again specifies the boot partition and locates the FreeBSD final-stage boot loader. This is the recommended practice (rather than directly invoking the FreeBSD kernel).
This stanza defines a bootable Windows partition:
title Win2K
root (hd0,2)
makeactive
chainloader +1
The boot partition is specified in the usual way. The makeactive
command activates the partition, and the chainloader command hands off
the boot process to local boot loader (for example, NTLDR).
In general, GRUB can boot operating systems on any disk. However, in some cases, it is easier to boot non-Unix operating systems on the second hard disk if you logically "swap" the first two drives. GRUB uses entries like these to do so:
map (hd0) (hd1)
map (hd1) (hd0)
GRUB also has the nice feature of remembering what operating system was last
booted and making it the default for the next time. To enable this capability,
set the default entry to saved (in the general section), and add a
savedefault directive to the end of each stanza:
title Linux
...
savedefault
Installing GRUB
Once you've created the configuration file, installing GRUB is very easy. It
is done with the grub-install utility that is included with the package.
This tool has the following general syntax:
# grub-install [--root-directory=/dir] disk
where disk is the boot partition, specified in either GRUB's format or
the local format (for example, (hd0) or /dev/hda, etc.).
The --root-directory option specifies the directory location of a
separate boot partition (for example, /boot under Linux).
For more information about GRUB, consult the following:
- GRUB project home page.
- Chapter 16, "Configuring and Building Kernels," of Essential System Administration, 3rd Edition.
If you liked this article and would like to receive the free ESA3 newsletter, you can sign up here.
Æleen Frisch has been a system administrator for over 20 years, tending a plethora of VMS, Unix, Macintosh, and Windows systems. If you liked this article and would like to receive the free ESA3 newsletter, you can sign up at http://www.aeleen.com/esa3_news.htm.
O'Reilly & Associates recently released (August 2002) Essential System Administration, 3rd Edition.
Sample Chapter 11, "Backup and Restore," is available free online.
You can also look at the Table of Contents, the Index, and the full description of the book.
For more information, or to order the book, click here.
Return to ONLamp.com.
You must be logged in to the O'Reilly Network to post a talkback.
Showing messages 1 through 6 of 6.
-
Mistake in example on page 1
2002-11-11 04:54:41 anonymous2 [Reply | View]
(hdn,p) where n is the disk number (starting at 0), and p is the partition number (again, starting at 0). For example, the second partition on the third hard disk would be designated as:
(hd1,2)
Umm, (hd2,1)
-
most under-used app? 'info'
2002-11-08 20:14:57 anonymous2 [Reply | View]
Seriously. I never realised how well documented GNU apps are until I got used to using 'info'. I hear there is another app called 'pinfo' (?), this read info documentation but has a differnet interface.
-
most under-used app? 'info'
2003-04-26 10:58:12 anonymous2 [Reply | View]
The reason info is so underused is because it's got such a horrid user interface. It badly needs a plain-text dumb-tty mode like VMS Help, and a batch mode like UNIX man. The former would make it a lot more usable over low grade lines and on graphic consoles in single-use mode which are often *not* well designed for screenmode work. The latter would help those of us who want a reference instead of a tutorial.







Debian systems use menu.lst, as they don't rename the config file from its original upstream name.