commit-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[2480] 2009-08-07 Robert Millan <address@hidden>


From: Robert Millan
Subject: [2480] 2009-08-07 Robert Millan <address@hidden>
Date: Fri, 07 Aug 2009 17:18:12 +0000

Revision: 2480
          http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2480
Author:   robertmh
Date:     2009-08-07 17:18:12 +0000 (Fri, 07 Aug 2009)
Log Message:
-----------
2009-08-07  Robert Millan  <address@hidden>

        * docs/grub.texi: Major overhaul.  Remove all sections that are
        specific to GRUB Legacy, or mostly composed of Legacy-specific
        information.

Modified Paths:
--------------
    trunk/grub2/ChangeLog
    trunk/grub2/docs/grub.texi

Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog       2009-08-07 17:14:16 UTC (rev 2479)
+++ trunk/grub2/ChangeLog       2009-08-07 17:18:12 UTC (rev 2480)
@@ -1,5 +1,11 @@
 2009-08-07  Robert Millan  <address@hidden>
 
+       * docs/grub.texi: Major overhaul.  Remove all sections that are
+       specific to GRUB Legacy, or mostly composed of Legacy-specific
+       information.
+
+2009-08-07  Robert Millan  <address@hidden>
+
        * docs/version.texi: New file.  Provides version information for
        grub.texi.
 

Modified: trunk/grub2/docs/grub.texi
===================================================================
--- trunk/grub2/docs/grub.texi  2009-08-07 17:14:16 UTC (rev 2479)
+++ trunk/grub2/docs/grub.texi  2009-08-07 17:18:12 UTC (rev 2480)
@@ -34,14 +34,9 @@
 @direntry
 * GRUB: (grub).                 The GRand Unified Bootloader
 * grub-install: (grub)Invoking grub-install.    Install GRUB on your drive
-* grub-md5-crypt: (grub)Invoking grub-md5-crypt.        Encrypt a password
-                                                        in MD5 format
 * grub-terminfo: (grub)Invoking grub-terminfo.  Generate a terminfo
                                                 command from a
                                                 terminfo name
-* grub-set-default: (grub)Invoking grub-set-default.    Set a default boot
-                                                        entry
-* mbchk: (grub)Invoking mbchk.  Check for the format of a Multiboot kernel
 @end direntry
 
 @setchapternewpage odd
@@ -86,7 +81,6 @@
 * Network::                     Downloading OS images from a network
 * Serial terminal::             Using GRUB via a serial line
 * Preset Menu::                 Embedding a configuration file into GRUB
-* Security::                    Improving the security
 * Images::                      GRUB image files
 * Filesystem::                  Filesystem syntax and semantics
 * Interface::                   The menu and the command-line
@@ -94,10 +88,7 @@
 * Troubleshooting::             Error messages produced by GRUB
 * Invoking the grub shell::     How to use the grub shell
 * Invoking grub-install::       How to use the GRUB installer
-* Invoking grub-md5-crypt::     How to generate a cryptic password
 * Invoking grub-terminfo::      How to generate a terminfo command
-* Invoking grub-set-default::   How to set a default boot entry
-* Invoking mbchk::              How to use the Multiboot checker
 * Obtaining and Building GRUB:: How to obtain and build GRUB
 * Reporting bugs::              Where you should send a bug report
 * Future::                      Some future plans on GRUB
@@ -158,12 +149,7 @@
 install GRUB on your drive (@pxref{Installation}), and how to boot your
 OSes (@pxref{Booting}), step by step.
 
-Besides the GRUB boot loader itself, there is a @dfn{grub shell}
address@hidden (@pxref{Invoking the grub shell}) which can be run when
-you are in your operating system. It emulates the boot loader and can
-be used for installing the boot loader.
 
-
 @node History
 @section History of GRUB
 
@@ -458,119 +444,17 @@
 if, by any chance, your hard drive becomes unusable (unbootable).
 
 GRUB comes with boot images, which are normally put in the directory
address@hidden/usr/lib/grub/i386-pc}. If you do not use grub-install, then
-you need to copy the files @file{stage1}, @file{stage2}, and
address@hidden to the directory @file{/boot/grub}, and run the
address@hidden (@pxref{Invoking grub-set-default}) if you
-intend to use @samp{default saved} (@pxref{default}) in your
-configuration file. Hereafter, the directory where GRUB images are
address@hidden/usr/lib/grub/i386-pc}. Hereafter, the directory where GRUB 
images are
 initially placed (normally @file{/usr/lib/grub/i386-pc}) will be
 called the @dfn{image directory}, and the directory where the boot
 loader needs to find them (usually @file{/boot/grub}) will be called
 the @dfn{boot directory}.
 
 @menu
-* Creating a GRUB boot floppy::
-* Installing GRUB natively::
 * Installing GRUB using grub-install::
-* Making a GRUB bootable CD-ROM::
 @end menu
 
 
address@hidden Creating a GRUB boot floppy
address@hidden Creating a GRUB boot floppy
-
-To create a GRUB boot floppy, you need to take the files @file{stage1}
-and @file{stage2} from the image directory, and write them to the first
-and the second block of the floppy disk, respectively.
-
address@hidden:} This procedure will destroy any data currently stored
-on the floppy.
-
-On a UNIX-like operating system, that is done with the following
-commands:
-
address@hidden
address@hidden
-# @kbd{cd /usr/lib/grub/i386-pc}
-# @kbd{dd if=stage1 of=/dev/fd0 bs=512 count=1}
-1+0 records in
-1+0 records out
-# @kbd{dd if=stage2 of=/dev/fd0 bs=512 seek=1}
-153+1 records in
-153+1 records out
-#
address@hidden group
address@hidden example
-
-The device file name may be different. Consult the manual for your OS.
-
-
address@hidden Installing GRUB natively
address@hidden Installing GRUB natively
-
address@hidden:} Installing GRUB's stage1 in this manner will erase the
-normal boot-sector used by an OS.
-
-GRUB can currently boot GNU Mach, Linux, FreeBSD, NetBSD, and OpenBSD
-directly, so using it on a boot sector (the first sector of a
-partition) should be okay. But generally, it would be a good idea to
-back up the first sector of the partition on which you are installing
-GRUB's stage1. This isn't as important if you are installing GRUB on
-the first sector of a hard disk, since it's easy to reinitialize it
-(e.g. by running @samp{FDISK /MBR} from DOS).
-
-If you decide to install GRUB in the native environment, which is
-definitely desirable, you'll need to create a GRUB boot disk, and
-reboot your computer with it. Otherwise, see @ref{Installing GRUB using
-grub-install}.
-
-Once started, GRUB will show the command-line interface
-(@pxref{Command-line interface}). First, set the GRUB's @dfn{root
address@hidden that GRUB's root device doesn't necessarily mean
-your OS's root partition; if you need to specify a root partition for
-your OS, add the argument into the command @command{kernel}.} to the
-partition containing the boot directory, like this:
-
address@hidden
-grub> @kbd{root (hd0,0)}
address@hidden example
-
-If you are not sure which partition actually holds this directory, use the
-command @command{find} (@pxref{find}), like this:
-
address@hidden
-grub> @kbd{find /boot/grub/stage1}
address@hidden example
-
-This will search for the file name @file{/boot/grub/stage1} and show the
-devices which contain the file.
-
-Once you've set the root device correctly, run the command
address@hidden (@pxref{setup}):
-
address@hidden
-grub> @kbd{setup (hd0)}
address@hidden example
-
-This command will install the GRUB boot loader on the Master Boot
-Record (MBR) of the first drive. If you want to put GRUB into the boot
-sector of a partition instead of putting it in the MBR, specify the
-partition into which you want to install GRUB:
-
address@hidden
-grub> @kbd{setup (hd0,0)}
address@hidden example
-
-If you install GRUB into a partition or a drive other than the first
-one, you must chain-load GRUB from another boot loader. Refer to the
-manual for the boot loader to know how to chain-load GRUB.
-
-After using the setup command, you will boot into GRUB without the
-GRUB floppy. See the chapter @ref{Booting} to find out how to boot
-your operating systems from GRUB.
-
-
 @node Installing GRUB using grub-install
 @section Installing GRUB using grub-install
 
@@ -722,7 +606,6 @@
 @menu
 * General boot methods::        How to boot OSes with GRUB generally
 * OS-specific notes::           Notes on some operating systems
-* Making your system robust::   How to make your system robust
 @end menu
 
 
@@ -753,75 +636,13 @@
 NetBSD and OpenBSD. If you want to boot other operating systems, you
 will have to chain-load them (@pxref{Chain-loading}).
 
-Generally, GRUB can boot any Multiboot-compliant OS in the following
-steps:
+FIXME: this section is incomplete.
 
 @enumerate
 @item
-Set GRUB's root device to the drive where the OS images are stored with
-the command @command{root} (@pxref{root}).
-
address@hidden
-Load the kernel image with the command @command{kernel} (@pxref{kernel}).
-
address@hidden
-If you need modules, load them with the command @command{module}
-(@pxref{module}) or @command{modulenounzip} (@pxref{modulenounzip}).
-
address@hidden
 Run the command @command{boot} (@pxref{boot}).
 @end enumerate
 
-Linux, FreeBSD, NetBSD and OpenBSD can be booted in a similar
-manner. You load a kernel image with the command @command{kernel} and
-then run the command @command{boot}. If the kernel requires some
-parameters, just append the parameters to @command{kernel}, after the
-file name of the kernel. Also, please refer to @ref{OS-specific notes},
-for information on your OS-specific issues.
-
-
address@hidden Chain-loading
address@hidden Load another boot loader to boot unsupported operating systems
-
-If you want to boot an unsupported operating system (e.g. Windows 95),
-chain-load a boot loader for the operating system. Normally, the boot
-loader is embedded in the @dfn{boot sector} of the partition on which
-the operating system is installed.
-
address@hidden
address@hidden
-Set GRUB's root device to the partition by the command
address@hidden (@pxref{rootnoverify}):
-
address@hidden
-grub> @kbd{rootnoverify (hd0,0)}
address@hidden example
-
address@hidden
-Set the @dfn{active} flag in the partition using the command
address@hidden@footnote{This is not necessary for most of the
-modern operating systems.} (@pxref{makeactive}):
-
address@hidden
-grub> @kbd{makeactive}
address@hidden example
-
address@hidden
-Load the boot loader with the command @command{chainloader}
-(@pxref{chainloader}):
-
address@hidden
-grub> @kbd{chainloader +1}
address@hidden example
-
address@hidden indicates that GRUB should read one sector from the start of
-the partition. The complete description about this syntax can be found
-in @ref{Block list syntax}.
-
address@hidden
-Run the command @command{boot} (@pxref{boot}).
address@hidden enumerate
-
 However, DOS and Windows have some deficiencies, so you might have to
 use more complicated instructions. @xref{DOS/Windows}, for more
 information.
@@ -835,12 +656,6 @@
 @menu
 * GNU/Hurd::
 * GNU/Linux::
-* FreeBSD::
-* NetBSD::
-* OpenBSD::
-* DOS/Windows::
-* SCO UnixWare::
-* QNX::
 @end menu
 
 
@@ -851,23 +666,10 @@
 nothing special about it. But do not forget that you have to specify a
 root partition to the kernel.
 
+FIXME: this section is incomplete.
+
 @enumerate
 @item
-Set GRUB's root device to the same drive as GNU/Hurd's. Probably the
-command @code{find /boot/gnumach} or similar can help you
-(@pxref{find}).
-
address@hidden
-Load the kernel and the module, like this:
-
address@hidden
address@hidden
-grub> @kbd{kernel /boot/gnumach root=hd0s1}
-grub> @kbd{module /boot/serverboot}
address@hidden group
address@hidden example
-
address@hidden
 Run the command @command{boot} (@pxref{boot}).
 @end enumerate
 
@@ -878,37 +680,13 @@
 It is relatively easy to boot GNU/Linux from GRUB, because it somewhat
 resembles to boot a Multiboot-compliant OS.
 
+FIXME: this section is incomplete.
+
 @enumerate
 @item
-Set GRUB's root device to the same drive as GNU/Linux's. Probably the
-command @code{find /vmlinuz} or similar can help you (@pxref{find}).
+Set GRUB's root device to the same drive as GNU/Linux's.
 
 @item
-Load the kernel:
-
address@hidden
-grub> @kbd{kernel /vmlinuz root=/dev/hda1}
address@hidden example
-
-If you need to specify some kernel parameters, just append them to the
-command. For example, to set @option{vga} to @samp{ext}, do this:
-
address@hidden
-grub> @kbd{kernel /vmlinuz root=/dev/hda1 vga=ext}
address@hidden example
-
-See the documentation in the Linux source tree for complete
-information on the available options.
-
address@hidden
-If you use an initrd, execute the command @command{initrd}
-(@pxref{initrd}) after @command{kernel}:
-
address@hidden
-grub> @kbd{initrd /initrd}
address@hidden example
-
address@hidden
 Finally, run the command @command{boot} (@pxref{boot}).
 @end enumerate
 
@@ -919,617 +697,6 @@
 kernel. @xref{uppermem}, for more information.
 
 
address@hidden FreeBSD
address@hidden FreeBSD
-
-GRUB can load the kernel directly, either in ELF or a.out format. But
-this is not recommended, since FreeBSD's bootstrap interface sometimes
-changes heavily, so GRUB can't guarantee to pass kernel parameters
-correctly.
-
-Thus, we'd recommend loading the very flexible loader
address@hidden/boot/loader} instead. See this example:
-
address@hidden
address@hidden
-grub> @kbd{root (hd0,a)}
-grub> @kbd{kernel /boot/loader}
-grub> @kbd{boot}
address@hidden group
address@hidden example
-
-
address@hidden NetBSD
address@hidden NetBSD
-
-GRUB can load NetBSD a.out and ELF directly, follow these steps:
-
address@hidden
address@hidden
-Set GRUB's root device with @command{root} (@pxref{root}).
-
address@hidden
-Load the kernel with @command{kernel} (@pxref{kernel}). You should
-append the ugly option @option{--type=netbsd}, if you want to load an
-ELF kernel, like this:
-
address@hidden
-grub> @kbd{kernel --type=netbsd /netbsd-elf}
address@hidden example
-
address@hidden
-Run @command{boot} (@pxref{boot}).
address@hidden enumerate
-
-For now, however, GRUB doesn't allow you to pass kernel parameters, so
-it may be better to chain-load it instead. For more information, please
-see @ref{Chain-loading}.
-
-
address@hidden OpenBSD
address@hidden OpenBSD
-
-The booting instruction is exactly the same as for NetBSD
-(@pxref{NetBSD}).
-
-
address@hidden DOS/Windows
address@hidden DOS/Windows
-
-GRUB cannot boot DOS or Windows directly, so you must chain-load them
-(@pxref{Chain-loading}). However, their boot loaders have some critical
-deficiencies, so it may not work to just chain-load them. To overcome
-the problems, GRUB provides you with two helper functions.
-
-If you have installed DOS (or Windows) on a non-first hard disk, you
-have to use the disk swapping technique, because that OS cannot boot
-from any disks but the first one. The workaround used in GRUB is the
-command @command{map} (@pxref{map}), like this:
-
address@hidden
address@hidden
-grub> @kbd{map (hd0) (hd1)}
-grub> @kbd{map (hd1) (hd0)}
address@hidden group
address@hidden example
-
-This performs a @dfn{virtual} swap between your first and second hard
-drive.
-
address@hidden:} This is effective only if DOS (or Windows) uses BIOS
-to access the swapped disks. If that OS uses a special driver for the
-disks, this probably won't work.
-
-Another problem arises if you installed more than one set of DOS/Windows
-onto one disk, because they could be confused if there are more than one
-primary partitions for DOS/Windows. Certainly you should avoid doing
-this, but there is a solution if you do want to do so. Use the partition
-hiding/unhiding technique.
-
-If GRUB @dfn{hide}s a DOS (or Windows) partition (@pxref{hide}), DOS (or
-Windows) will ignore the partition. If GRUB @dfn{unhide}s a DOS (or
-Windows) partition (@pxref{unhide}), DOS (or Windows) will detect the
-partition. Thus, if you have installed DOS (or Windows) on the first
-and the second partition of the first hard disk, and you want to boot
-the copy on the first partition, do the following:
-
address@hidden
address@hidden
-grub> @kbd{unhide (hd0,0)}
-grub> @kbd{hide (hd0,1)}
-grub> @kbd{rootnoverify (hd0,0)}
-grub> @kbd{chainloader +1}
-grub> @kbd{makeactive}
-grub> @kbd{boot}
address@hidden group
address@hidden example
-
-
address@hidden SCO UnixWare
address@hidden SCO UnixWare
-
-It is known that the signature in the boot loader for SCO UnixWare is
-wrong, so you will have to specify the option @option{--force} to
address@hidden (@pxref{chainloader}), like this:
-
address@hidden
address@hidden
-grub> @kbd{rootnoverify (hd1,0)}
-grub> @kbd{chainloader --force +1}
-grub> @kbd{makeactive}
-grub> @kbd{boot}
address@hidden group
address@hidden example
-
-
address@hidden QNX
address@hidden QNX
-
-QNX seems to use a bigger boot loader, so you need to boot it up, like
-this:
-
address@hidden
address@hidden
-grub> @kbd{rootnoverify (hd1,1)}
-grub> @kbd{chainloader +4}
-grub> @kbd{boot}
address@hidden group
address@hidden example
-
-
address@hidden Making your system robust
address@hidden How to make your system robust
-
-When you test a new kernel or a new OS, it is important to make sure
-that your computer can boot even if the new system is unbootable. This
-is crucial especially if you maintain servers or remote systems. To
-accomplish this goal, you need to set up two things:
-
address@hidden
address@hidden
-You must maintain a system which is always bootable. For instance, if
-you test a new kernel, you need to keep a working kernel in a
-different place. And, it would sometimes be very nice to even have a
-complete copy of a working system in a different partition or disk.
-
address@hidden
-You must direct GRUB to boot a working system when the new system
-fails. This is possible with the @dfn{fallback} system in GRUB.
address@hidden enumerate
-
-The former requirement is very specific to each OS, so this
-documentation does not cover that topic. It is better to consult some
-backup tools.
-
-So let's see the GRUB part. There are two possibilities: one of them
-is quite simple but not very robust, and the other is a bit complex to
-set up but probably the best solution to make sure that your system
-can start as long as GRUB itself is bootable.
-
address@hidden
-* Booting once-only::
-* Booting fallback systems::
address@hidden menu
-
-
address@hidden Booting once-only
address@hidden Booting once-only
-
-You can teach GRUB to boot an entry only at next boot time. Suppose
-that your have an old kernel @file{old_kernel} and a new kernel
address@hidden You know that @file{old_kernel} can boot
-your system correctly, and you want to test @file{new_kernel}.
-
-To ensure that your system will go back to the old kernel even if the
-new kernel fails (e.g. it panics), you can specify that GRUB should
-try the new kernel only once and boot the old kernel after that.
-
-First, modify your configuration file. Here is an example:
-
address@hidden
address@hidden
-default saved        # This is important!!!
-timeout 10
-
-title the old kernel
-root (hd0,0)
-kernel /old_kernel
-savedefault
-
-title the new kernel
-root (hd0,0)
-kernel /new_kernel
-savedefault 0         # This is important!!!
address@hidden group
address@hidden example
-
-Note that this configuration file uses @samp{default saved}
-(@pxref{default}) at the head and @samp{savedefault 0}
-(@pxref{savedefault}) in the entry for the new kernel. This means
-that GRUB boots a saved entry by default, and booting the entry for the
-new kernel saves @samp{0} as the saved entry.
-
-With this configuration file, after all, GRUB always tries to boot the
-old kernel after it booted the new one, because @samp{0} is the entry
-of @code{the old kernel}.
-
-The next step is to tell GRUB to boot the new kernel at next boot
-time. For this, execute @command{grub-set-default} (@pxref{Invoking
-grub-set-default}):
-
address@hidden
-# @kbd{grub-set-default 1}
address@hidden example
-
-This command sets the saved entry to @samp{1}, that is, to the new
-kernel.
-
-This method is useful, but still not very robust, because GRUB stops
-booting, if there is any error in the boot entry, such that the new
-kernel has an invalid executable format. Thus, it it even better to
-use the @dfn{fallback} mechanism of GRUB. Look at next subsection for
-this feature.
-
-
address@hidden Booting fallback systems
address@hidden Booting fallback systems
-
-GRUB supports a fallback mechanism of booting one or more other
-entries if a default boot entry fails. You can specify multiple
-fallback entries if you wish.
-
-Suppose that you have three systems, @samp{A}, @samp{B} and
address@hidden @samp{A} is a system which you want to boot by
-default. @samp{B} is a backup system which is supposed to boot
-safely. @samp{C} is another backup system which is used in case where
address@hidden is broken.
-
-Then you may want GRUB to boot the first system which is bootable
-among @samp{A}, @samp{B} and @samp{C}. A configuration file can be
-written in this way:
-
address@hidden
address@hidden
-default saved        # This is important!!!
-timeout 10
-fallback 1 2         # This is important!!!
-
-title A
-root (hd0,0)
-kernel /kernel
-savedefault fallback # This is important!!!
-
-title B
-root (hd1,0)
-kernel /kernel
-savedefault fallback # This is important!!!
-
-title C
-root (hd2,0)
-kernel /kernel
-savedefault
address@hidden group
address@hidden example
-
-Note that @samp{default saved} (@pxref{default}), @samp{fallback 1 2}
-and @samp{savedefault fallback} are used. GRUB will boot a saved entry
-by default and save a fallback entry as next boot entry with this
-configuration.
-
-When GRUB tries to boot @samp{A}, GRUB saves @samp{1} as next boot
-entry, because the command @command{fallback} specifies that @samp{1}
-is the first fallback entry. The entry @samp{1} is @samp{B}, so GRUB
-will try to boot @samp{B} at next boot time.
-
-Likewise, when GRUB tries to boot @samp{B}, GRUB saves @samp{2} as
-next boot entry, because @command{fallback} specifies @samp{2} as next
-fallback entry. This makes sure that GRUB will boot @samp{C} after
-booting @samp{B}.
-
-It is noteworthy that GRUB uses fallback entries both when GRUB
-itself fails in booting an entry and when @samp{A} or @samp{B} fails
-in starting up your system. So this solution ensures that your system
-is started even if GRUB cannot find your kernel or if your kernel
-panics.
-
-However, you need to run @command{grub-set-default} (@pxref{Invoking
-grub-set-default}) when @samp{A} starts correctly or you fix @samp{A}
-after it crashes, since GRUB always sets next boot entry to a fallback
-entry. You should run this command in a startup script such as
address@hidden to boot @samp{A} by default:
-
address@hidden
-# @kbd{grub-set-default 0}
address@hidden example
-
-where @samp{0} is the number of the boot entry for the system
address@hidden
-
-If you want to see what is current default entry, you can look at the
-file @file{/boot/grub/default} (or @file{/grub/default} in
-some systems). Because this file is plain-text, you can just
address@hidden this file. But it is strongly recommended @strong{not to
-modify this file directly}, because GRUB may fail in saving a default
-entry in this file, if you change this file in an unintended
-manner. Therefore, you should use @command{grub-set-default} when you
-need to change the default entry.
-
-
address@hidden Configuration
address@hidden Configuration
-
-You've probably noticed that you need to type several commands to boot your
-OS. There's a solution to that - GRUB provides a menu interface
-(@pxref{Menu interface}) from which you can select an item (using arrow
-keys) that will do everything to boot an OS.
-
-To enable the menu, you need a configuration file,
address@hidden under the boot directory. We'll analyze an example
-file.
-
-The file first contains some general settings, the menu interface
-related options. You can put these commands (@pxref{Menu-specific
-commands}) before any of the items (starting with @command{title}
-(@pxref{title})).
-
address@hidden
address@hidden
-#
-# Sample boot menu configuration file
-#
address@hidden group
address@hidden example
-
-As you may have guessed, these lines are comments. Lines starting with a
-hash character (@samp{#}), and blank lines, are ignored by GRUB.
-
address@hidden
address@hidden
-# By default, boot the first entry.
-default 0
address@hidden group
address@hidden example
-
-The first entry (here, counting starts with number zero, not one!) will
-be the default choice.
-
address@hidden
address@hidden
-# Boot automatically after 30 secs.
-timeout 30
address@hidden group
address@hidden example
-
-As the comment says, GRUB will boot automatically in 30 seconds, unless
-interrupted with a keypress.
-
address@hidden
address@hidden
-# Fallback to the second entry.
-fallback 1
address@hidden group
address@hidden example
-
-If, for any reason, the default entry doesn't work, fall back to the
-second one (this is rarely used, for obvious reasons).
-
-Note that the complete descriptions of these commands, which are menu
-interface specific, can be found in @ref{Menu-specific
-commands}. Other descriptions can be found in @ref{Commands}.
-
-Now, on to the actual OS definitions. You will see that each entry
-begins with a special command, @command{title} (@pxref{title}), and the
-action is described after it. Note that there is no command
address@hidden (@pxref{boot}) at the  end of each item. That is because
-GRUB automatically executes @command{boot} if it loads other commands
-successfully.
-
-The argument for the command @command{title} is used to display a short
-title/description of the entry in the menu. Since @command{title}
-displays the argument as is, you can write basically anything there.
-
address@hidden
address@hidden
-# For booting GNU/Hurd
-title  GNU/Hurd
-root   (hd0,0)
-kernel /boot/gnumach.gz root=hd0s1
-module /boot/serverboot.gz
address@hidden group
address@hidden example
-
-This boots GNU/Hurd from the first hard disk.
-
address@hidden
address@hidden
-# For booting GNU/Linux
-title  GNU/Linux
-kernel (hd1,0)/vmlinuz root=/dev/hdb1
address@hidden group
address@hidden example
-
-This boots GNU/Linux, but from the second hard disk.
-
address@hidden
address@hidden
-# For booting Mach (getting kernel from floppy)
-title  Utah Mach4 multiboot
-root   (hd0,2)
-pause  Insert the diskette now^G!!
-kernel (fd0)/boot/kernel root=hd0s3
-module (fd0)/boot/bootstrap
address@hidden group
address@hidden example
-
-This boots Mach with a kernel on a floppy, but the root filesystem at
-hd0s3. It also contains a @command{pause} line (@pxref{pause}), which
-will cause GRUB to display a prompt and delay, before actually executing
-the rest of the commands and booting.
-
address@hidden
address@hidden
-# For booting FreeBSD
-title  FreeBSD
-root   (hd0,2,a)
-kernel /boot/loader
address@hidden group
address@hidden example
-
-This item will boot FreeBSD kernel loaded from the @samp{a} partition of
-the third @sc{pc} slice of the first hard disk.
-
address@hidden
address@hidden
-# For booting OS/2
-title OS/2
-root  (hd0,1)
-makeactive
-# chainload OS/2 bootloader from the first sector
-chainloader +1
-# This is similar to "chainload", but loads a specific file
-#chainloader /boot/chain.os2
address@hidden group
address@hidden example
-
-This will boot OS/2, using a chain-loader (@pxref{Chain-loading}).
-
address@hidden
address@hidden
-# For booting Windows NT or Windows95
-title Windows NT / Windows 95 boot menu
-root        (hd0,0)
-makeactive
-chainloader +1
-# For loading DOS if Windows NT is installed
-# chainload /bootsect.dos
address@hidden group
address@hidden example
-
-The same as the above, but for Windows.
-
address@hidden
address@hidden
-# For installing GRUB into the hard disk
-title Install GRUB into the hard disk
-root    (hd0,0)
-setup   (hd0)
address@hidden group
address@hidden example
-
-This will just (re)install GRUB onto the hard disk.
-
address@hidden
-# Change the colors.
-title Change the colors
-color light-green/brown blink-red/blue
address@hidden example
-
-In the last entry, the command @command{color} is used (@pxref{color}),
-to change the menu colors (try it!). This command is somewhat special,
-because it can be used both in the command-line and in the menu. GRUB
-has several such commands, see @ref{General commands}.
-
-We hope that you now understand how to use the basic features of
-GRUB. To learn more about GRUB, see the following chapters.
-
-
address@hidden Network
address@hidden Downloading OS images from a network
-
-Although GRUB is a disk-based boot loader, it does provide network
-support. To use the network support, you need to enable at least one
-network driver in the GRUB build process. For more information please
-see @file{netboot/README.netboot} in the source distribution.
-
address@hidden
-* General usage of network support::
-* Diskless::
address@hidden menu
-
-
address@hidden General usage of network support
address@hidden How to set up your network
-
-GRUB requires a file server and optionally a server that will assign an
-IP address to the machine on which GRUB is running. For the former, only
-TFTP is supported at the moment. The latter is either BOOTP, DHCP or a
-RARP address@hidden is not advised, since it cannot serve much
-information}. It is not necessary to run both the servers on one
-computer. How to configure these servers is beyond the scope of this
-document, so please refer to the manuals specific to those
-protocols/servers.
-
-If you decided to use a server to assign an IP address, set up the
-server and run @command{bootp} (@pxref{bootp}), @command{dhcp}
-(@pxref{dhcp}) or @command{rarp} (@pxref{rarp}) for BOOTP, DHCP or RARP,
-respectively. Each command will show an assigned IP address, a netmask,
-an IP address for your TFTP server and a gateway. If any of the
-addresses is wrong or it causes an error, probably the configuration of
-your servers isn't set up properly.
-
-Otherwise, run @command{ifconfig}, like this:
-
address@hidden
-grub> @kbd{ifconfig --address=192.168.110.23 --server=192.168.110.14}
address@hidden example
-
-You can also use @command{ifconfig} in conjuction with @command{bootp},
address@hidden or @command{rarp} (e.g. to reassign the server address
-manually). @xref{ifconfig}, for more details.
-
-Finally, download your OS images from your network. The network can be
-accessed using the network drive @samp{(nd)}. Everything else is very
-similar to the normal instructions (@pxref{Booting}).
-
-Here is an example:
-
address@hidden
address@hidden
-grub> @kbd{bootp}
-Probing... [NE*000]
-NE2000 base ...
-Address: 192.168.110.23    Netmask: 255.255.255.0
-Server: 192.168.110.14     Gateway: 192.168.110.1
-
-grub> @kbd{root (nd)}
-grub> @kbd{kernel /tftproot/gnumach.gz root=sd0s1}
-grub> @kbd{module /tftproot/serverboot.gz}
-grub> @kbd{boot}
address@hidden group
address@hidden example
-
-
address@hidden Diskless
address@hidden Booting from a network
-
-It is sometimes very useful to boot from a network, especially when you
-use a machine which has no local disk. In this case, you need to obtain
-a kind of Net Boot @sc{rom}, such as a PXE @sc{rom} or a free software
-package like Etherboot. Such a Boot @sc{rom} first boots the machine,
-sets up the network card installed into the machine, and downloads a
-second stage boot image from the network. Then, the second image will
-try to boot an operating system actually from the network.
-
-GRUB provides two second stage images, @file{nbgrub} and
address@hidden (@pxref{Images}). These images are the same as the
-normal Stage 2, except that they set up a network automatically, and try
-to load a configuration file from the network, if specified. The usage
-is very simple: If the machine has a PXE @sc{rom}, use
address@hidden If the machine has an NBI loader such as Etherboot, use
address@hidden There is no difference between them except their
-formats. Since the way to load a second stage image you want to use
-should be described in the manual on your Net Boot @sc{rom}, please
-refer to the manual, for more information.
-
-However, there is one thing specific to GRUB. Namely, how to specify a
-configuration file in a BOOTP/DHCP server. For now, GRUB uses the tag
address@hidden, to get the name of a configuration file. The following is an
-example with a BOOTP configuration:
-
address@hidden
address@hidden
-.allhost:hd=/tmp:bf=null:\
-        :ds=145.71.35.1 145.71.32.1:\
-        :sm=255.255.254.0:\
-        :gw=145.71.35.1:\
-        :sa=145.71.35.5:
-
-foo:ht=1:ha=63655d0334a7:ip=145.71.35.127:\
-        :bf=/nbgrub:\
-        :tc=.allhost:\
-        :T150="(nd)/tftpboot/menu.lst.foo":
address@hidden group
address@hidden example
-
-Note that you should specify the drive name @code{(nd)} in the name of
-the configuration file. This is because you might change the root drive
-before downloading the configuration from the TFTP server when the
-preset menu feature is used (@pxref{Preset Menu}).
-
-See the manual of your BOOTP/DHCP server for more information. The
-exact syntax should differ a little from the example.
-
-
 @node Serial terminal
 @chapter Using GRUB via a serial line
 
@@ -1581,214 +748,6 @@
 menu requires several fancy features of your terminal.
 
 
address@hidden Preset Menu
address@hidden Embedding a configuration file into GRUB
-
-GRUB supports a @dfn{preset menu} which is to be always loaded before
-starting. The preset menu feature is useful, for example, when your
-computer has no console but a serial cable. In this case, it is
-critical to set up the serial terminal as soon as possible, since you
-cannot see any message until the serial terminal begins to work. So it
-is good to run the commands @command{serial} (@pxref{serial}) and
address@hidden (@pxref{terminal}) before anything else at the
-start-up time.
-
-How the preset menu works is slightly complicated:
-
address@hidden
address@hidden
-GRUB checks if the preset menu feature is used, and loads the preset
-menu, if available. This includes running commands and reading boot
-entries, like an ordinary configuration file.
-
address@hidden
-GRUB checks if the configuration file is available. Note that this check
-is performed @strong{regardless of the existence of the preset
-menu}. The configuration file is loaded even if the preset menu was
-loaded.
-
address@hidden
-If the preset menu includes any boot entries, they are cleared when
-the configuration file is loaded. It doesn't matter whether the
-configuration file has any entries or no entry. The boot entries in the
-preset menu are used only when GRUB fails in loading the configuration
-file.
address@hidden enumerate
-
-To enable the preset menu feature, you must rebuild GRUB specifying a
-file to the configure script with the option
address@hidden The file has the same semantics as
-normal configuration files (@pxref{Configuration}).
-
-Another point you should take care is that the diskless support
-(@pxref{Diskless}) diverts the preset menu. Diskless images embed a
-preset menu to execute the command @command{bootp} (@pxref{bootp})
-automatically, unless you specify your own preset menu to the configure
-script. This means that you must put commands to initialize a network in
-the preset menu yourself, because diskless images don't set it up
-implicitly, when you use the preset menu explicitly.
-
-Therefore, a typical preset menu used with diskless support would be
-like this:
-
address@hidden
address@hidden
-# Set up the serial terminal, first of all.
-serial --unit=0 --speed=19200
-terminal --timeout=0 serial
-
-# Initialize the network.
-dhcp
address@hidden group
address@hidden example
-
-
address@hidden Security
address@hidden Protecting your computer from cracking
-
-You may be interested in how to prevent ordinary users from doing
-whatever they like, if you share your computer with other people. So
-this chapter describes how to improve the security of GRUB.
-
-One thing which could be a security hole is that the user can do too
-many things with GRUB, because GRUB allows one to modify its configuration
-and run arbitrary commands at run-time. For example, the user can even
-read @file{/etc/passwd} in the command-line interface by the command
address@hidden (@pxref{cat}). So it is necessary to disable all the
-interactive operations.
-
-Thus, GRUB provides a @dfn{password} feature, so that only administrators
-can start the interactive operations (i.e. editing menu entries and
-entering the command-line interface). To use this feature, you need to
-run the command @command{password} in your configuration file
-(@pxref{password}), like this:
-
address@hidden
-password --md5 PASSWORD
address@hidden example
-
-If this is specified, GRUB disallows any interactive control, until you
-press the key @key{p} and enter a correct password.  The option
address@hidden tells GRUB that @samp{PASSWORD} is in MD5 format.  If it
-is omitted, GRUB assumes the @samp{PASSWORD} is in clear text.
-
-You can encrypt your password with the command @command{md5crypt}
-(@pxref{md5crypt}). For example, run the grub shell (@pxref{Invoking the
-grub shell}), and enter your password:
-
address@hidden
address@hidden
-grub> md5crypt
-Password: **********
-Encrypted: $1$U$JK7xFegdxWH6VuppCUSIb.
address@hidden group
address@hidden example
-
-Then, cut and paste the encrypted password to your configuration file.
-
-Also, you can specify an optional argument to @command{password}. See
-this example:
-
address@hidden
-password PASSWORD /boot/grub/menu-admin.lst
address@hidden example
-
-In this case, GRUB will load @file{/boot/grub/menu-admin.lst} as a
-configuration file when you enter the valid password.
-
-Another thing which may be dangerous is that any user can choose any
-menu entry. Usually, this wouldn't be problematic, but you might want to
-permit only administrators to run some of your menu entries, such as an
-entry for booting an insecure OS like DOS.
-
-GRUB provides the command @command{lock} (@pxref{lock}). This command
-always fails until you enter the valid password, so you can use it, like
-this:
-
address@hidden
address@hidden
-title Boot DOS
-lock
-rootnoverify (hd0,1)
-makeactive
-chainload +1
address@hidden group
address@hidden example
-
-You should insert @command{lock} right after @command{title}, because
-any user can execute commands in an entry until GRUB encounters
address@hidden
-
-You can also use the command @command{password} instead of
address@hidden In this case the boot process will ask for the password
-and stop if it was entered incorrectly.  Since the @command{password}
-takes its own @var{PASSWORD} argument this is useful if you want
-different passwords for different entries.
-
-
address@hidden Images
address@hidden GRUB image files
-
-GRUB consists of several images: two essential stages, optional stages
-called @dfn{Stage 1.5}, one image for bootable CD-ROM, and two network
-boot images. Here is a short overview of them. @xref{Internals}, for
-more details.
-
address@hidden @file
address@hidden stage1
-This is an essential image used for booting up GRUB. Usually, this is
-embedded in an MBR or the boot sector of a partition. Because a PC boot
-sector is 512 bytes, the size of this image is exactly 512 bytes.
-
-All @file{stage1} must do is to load Stage 2 or Stage 1.5 from a local
-disk. Because of the size restriction, @file{stage1} encodes the
-location of Stage 2 (or Stage 1.5) in a block list format, so it never
-understand any filesystem structure.
-
address@hidden stage2
-This is the core image of GRUB. It does everything but booting up
-itself. Usually, this is put in a filesystem, but that is not required.
-
address@hidden e2fs_stage1_5
address@hidden fat_stage1_5
address@hidden ffs_stage1_5
address@hidden jfs_stage1_5
address@hidden minix_stage1_5
address@hidden reiserfs_stage1_5
address@hidden vstafs_stage1_5
address@hidden xfs_stage1_5
-
-These are called @dfn{Stage 1.5}, because they serve as a bridge
-between @file{stage1} and @file{stage2}, that is to say, Stage 1.5 is
-loaded by Stage 1 and Stage 1.5 loads Stage 2. The difference between
address@hidden and @file{*_stage1_5} is that the former doesn't
-understand any filesystem while the latter understands one filesystem
-(e.g. @file{e2fs_stage1_5} understands ext2fs). So you can move the
-Stage 2 image to another location safely, even after GRUB has been
-installed.
-
-While Stage 2 cannot generally be embedded in a fixed area as the size
-is so large, Stage 1.5 can be installed into the area right after an MBR,
-or the boot loader area of a ReiserFS or a FFS.
-
address@hidden stage2_eltorito
-This is a boot image for CD-ROMs using the @dfn{no emulation mode} in
-El Torito specification. This is identical to Stage 2, except that
-this boots up without Stage 1 and sets up a special drive @samp{(cd)}.
-
address@hidden nbgrub
-This is a network boot image for the Network Image Proposal used by some
-network boot loaders, such as Etherboot. This is mostly the same as
-Stage 2, but it also sets up a network and loads a configuration file
-from the network.
-
address@hidden pxegrub
-This is another network boot image for the Preboot Execution Environment
-used by several Netboot ROMs. This is identical to @file{nbgrub}, except
-for the format.
address@hidden table
-
-
 @node Filesystem
 @chapter Filesystem syntax and semantics
 
@@ -1907,8 +866,6 @@
 @menu
 * Command-line interface::      The flexible command-line interface
 * Menu interface::              The simple menu interface
-* Menu entry editor::           Editing a menu entry
-* Hidden menu interface::       The hidden menu interface
 @end menu
 
 
@@ -2029,19 +986,6 @@
 returning to the main menu.
 
 
address@hidden Hidden menu interface
address@hidden The hidden menu interface
-
-When your terminal is dumb or you request GRUB to hide the menu
-interface explicitly with the command @command{hiddenmenu}
-(@pxref{hiddenmenu}), GRUB doesn't show the menu interface (@pxref{Menu
-interface}) and automatically boots the default entry, unless
-interrupted by pressing @key{ESC}.
-
-When you interrupt the timeout and your terminal is dumb, GRUB falls
-back to the command-line interface (@pxref{Command-line interface}).
-
-
 @node Commands
 @chapter The list of available commands
 
@@ -2094,65 +1038,13 @@
 These commands can only be used in the menu:
 
 @menu
-* default::                     Set the default entry
-* fallback::                    Set the fallback entry
-* hiddenmenu::                  Hide the menu interface
-* timeout::                     Set the timeout
-* title::                       Start a menu entry
+* menuentry::                   Start a menu entry
 @end menu
 
 
address@hidden default
address@hidden default
address@hidden menuentry
address@hidden menuentry
 
address@hidden Command default num
-Set the default entry to the entry number @var{num}. Numbering starts
-from 0, and the entry number 0 is the default if the command is not
-used.
-
-You can specify @samp{saved} instead of a number. In this case, the
-default entry is the entry saved with the command
address@hidden @xref{savedefault}, for more information.
address@hidden deffn
-
-
address@hidden fallback
address@hidden fallback
-
address@hidden Command fallback num...
-Go into unattended boot mode: if the default boot entry has any errors,
-instead of waiting for the user to do something, immediately start
-over using the @var{num} entry (same numbering as the @code{default}
-command (@pxref{default})). This obviously won't help if the machine was
-rebooted by a kernel that GRUB loaded. You can specify multiple
-fallback entry numbers.
address@hidden deffn
-
-
address@hidden hiddenmenu
address@hidden hiddenmenu
-
address@hidden Command hiddenmenu
-Don't display the menu. If the command is used, no menu will be
-displayed on the control terminal, and the default entry will be
-booted after the timeout expired. The user can still request the
-menu to be displayed by pressing @key{ESC} before the timeout
-expires. See also @ref{Hidden menu interface}.
address@hidden deffn
-
-
address@hidden timeout
address@hidden timeout
-
address@hidden Command timeout sec
-Set a timeout, in @var{sec} seconds, before automatically booting the
-default entry (normally the first entry defined).
address@hidden deffn
-
-
address@hidden title
address@hidden title
-
 @deffn Command title name @dots{}
 Start a new boot entry, and set its name to the contents of the rest of
 the line, starting with the first non-space character.
@@ -2165,242 +1057,11 @@
 Commands usable anywhere in the menu and in the command-line.
 
 @menu
-* bootp::                       Initialize a network device via BOOTP
-* color::                       Color the menu interface
-* device::                      Specify a file as a drive
-* dhcp::                        Initialize a network device via DHCP
-* hide::                        Hide a partition
-* ifconfig::                    Configure a network device manually
-* pager::                       Change the state of the internal pager
-* partnew::                     Make a primary partition
-* parttype::                    Change the type of a partition
-* password::                    Set a password for the menu interface
-* rarp::                        Initialize a network device via RARP
 * serial::                      Set up a serial device
-* setkey::                      Configure the key map
-* terminal::                    Choose a terminal
 * terminfo::                    Define escape sequences for a terminal
-* tftpserver::                  Specify a TFTP server
-* unhide::                      Unhide a partition
 @end menu
 
 
address@hidden bootp
address@hidden bootp
-
address@hidden Command bootp address@hidden
-Initialize a network device via the @dfn{BOOTP} protocol. This command
-is only available if GRUB is compiled with netboot support. See also
address@hidden
-
-If you specify @option{--with-configfile} to this command, GRUB will
-fetch and load a configuration file specified by your BOOTP server
-with the vendor tag @samp{150}.
address@hidden deffn
-
-
address@hidden color
address@hidden color
-
address@hidden Command color normal [highlight]
-Change the menu colors. The color @var{normal} is used for most
-lines in the menu (@pxref{Menu interface}), and the color
address@hidden is used to highlight the line where the cursor
-points. If you omit @var{highlight}, then the inverted color of
address@hidden is used for the highlighted line. The format of a color is
address@hidden@var{foreground}/@var{background}}. @var{foreground} and
address@hidden are symbolic color names. A symbolic color name must be
-one of these:
-
address@hidden @bullet
address@hidden
-black
-
address@hidden
-blue
-
address@hidden
-green
-
address@hidden
-cyan
-
address@hidden
-red
-
address@hidden
-magenta
-
address@hidden
-brown
-
address@hidden
-light-gray
-
address@hidden below can be specified only for the foreground.}
-
address@hidden
-dark-gray
-
address@hidden
-light-blue
-
address@hidden
-light-green
-
address@hidden
-light-cyan
-
address@hidden
-light-red
-
address@hidden
-light-magenta
-
address@hidden
-yellow
-
address@hidden
-white
address@hidden itemize
-
-But only the first eight names can be used for @var{background}. You can
-prefix @code{blink-} to @var{foreground} if you want a blinking
-foreground color.
-
-This command can be used in the configuration file and on the command
-line, so you may write something like this in your configuration file:
-
address@hidden
address@hidden
-# Set default colors.
-color light-gray/blue black/light-gray
-
-# Change the colors.
-title OS-BS like
-color magenta/blue black/magenta
address@hidden group
address@hidden example
address@hidden deffn
-
-
address@hidden device
address@hidden device
-
address@hidden Command device drive file
-In the grub shell, specify the file @var{file} as the actual drive for a
address@hidden drive @var{drive}. You can use this command to create a disk
-image, and/or to fix the drives guessed by GRUB when GRUB fails to
-determine them correctly, like this:
-
address@hidden
address@hidden
-grub> @kbd{device (fd0) /floppy-image}
-grub> @kbd{device (hd0) /dev/sd0}
address@hidden group
address@hidden example
-
-This command can be used only in the grub shell (@pxref{Invoking the
-grub shell}).
address@hidden deffn
-
-
address@hidden dhcp
address@hidden dhcp
-
address@hidden Command dhcp [--with-configfile]
-Initialize a network device via the @dfn{DHCP} protocol. Currently,
-this command is just an alias for @command{bootp}, since the two
-protocols are very similar. This command is only available if GRUB is
-compiled with netboot support. See also @ref{Network}.
-
-If you specify @option{--with-configfile} to this command, GRUB will
-fetch and load a configuration file specified by your DHCP server
-with the vendor tag @samp{150}.
address@hidden deffn
-
-
address@hidden hide
address@hidden hide
-
address@hidden Command hide partition
-Hide the partition @var{partition} by setting the @dfn{hidden} bit in
-its partition type code. This is useful only when booting DOS or Windows
-and multiple primary FAT partitions exist in one disk. See also
address@hidden/Windows}.
address@hidden deffn
-
-
address@hidden ifconfig
address@hidden ifconfig
-
address@hidden Command ifconfig address@hidden address@hidden address@hidden 
address@hidden
-Configure the IP address, the netmask, the gateway, and the server
-address of a network device manually. The values must be in dotted
-decimal format, like @samp{192.168.11.178}. The order of the options is
-not important. This command shows current network configuration, if no
-option is specified. See also @ref{Network}.
address@hidden deffn
-
-
address@hidden pager
address@hidden pager
-
address@hidden Command pager [flag]
-Toggle or set the state of the internal pager. If @var{flag} is
address@hidden, the internal pager is enabled. If @var{flag} is @samp{off},
-it is disabled. If no argument is given, the state is toggled.
address@hidden deffn
-
-
address@hidden partnew
address@hidden partnew
-
address@hidden Command partnew part type from len
-Create a new primary partition. @var{part} is a partition specification
-in GRUB syntax (@pxref{Naming convention}); @var{type} is the partition
-type and must be a number in the range @code{0-0xff}; @var{from} is
-the starting address and @var{len} is the length, both in sector units.
address@hidden deffn
-
-
address@hidden parttype
address@hidden parttype
-
address@hidden Command parttype part type
-Change the type of an existing partition.  @var{part} is a partition
-specification in GRUB syntax (@pxref{Naming convention}); @var{type}
-is the new partition type and must be a number in the range 0-0xff.
address@hidden deffn
-
-
address@hidden password
address@hidden password
-
address@hidden Command password address@hidden passwd [new-config-file]
-If used in the first section of a menu file, disable all interactive
-editing control (menu entry editor and command-line) and entries
-protected by the command @command{lock}. If the password @var{passwd} is
-entered, it loads the @var{new-config-file} as a new config file and
-restarts the GRUB Stage 2, if @var{new-config-file} is
-specified. Otherwise, GRUB will just unlock the privileged instructions.
-You can also use this command in the script section, in which case it
-will ask for the password, before continuing.  The option
address@hidden tells GRUB that @var{passwd} is encrypted with
address@hidden (@pxref{md5crypt}).
address@hidden deffn
-
-
address@hidden rarp
address@hidden rarp
-
address@hidden Command rarp
-Initialize a network device via the @dfn{RARP} protocol.  This command
-is only available if GRUB is compiled with netboot support. See also
address@hidden
address@hidden deffn
-
-
 @node serial
 @subsection serial
 
@@ -2426,169 +1087,6 @@
 @end deffn
 
 
address@hidden setkey
address@hidden setkey
-
address@hidden Command setkey [to_key from_key]
-Change the keyboard map. The key @var{from_key} is mapped to the key
address@hidden If no argument is specified, reset key mappings. Note that
-this command @emph{does not} exchange the keys. If you want to exchange
-the keys, run this command again with the arguments exchanged, like this:
-
address@hidden
-grub> @kbd{setkey capslock control}
-grub> @kbd{setkey control capslock}
address@hidden example
-
-A key must be an alphabet letter, a digit, or one of these symbols:
address@hidden, @samp{exclam}, @samp{at}, @samp{numbersign},
address@hidden, @samp{percent}, @samp{caret}, @samp{ampersand},
address@hidden, @samp{parenleft}, @samp{parenright}, @samp{minus},
address@hidden, @samp{equal}, @samp{plus}, @samp{backspace},
address@hidden, @samp{bracketleft}, @samp{braceleft}, @samp{bracketright},
address@hidden, @samp{enter}, @samp{control}, @samp{semicolon},
address@hidden, @samp{quote}, @samp{doublequote}, @samp{backquote},
address@hidden, @samp{shift}, @samp{backslash}, @samp{bar}, @samp{comma},
address@hidden, @samp{period}, @samp{greater}, @samp{slash},
address@hidden, @samp{alt}, @samp{space}, @samp{capslock}, @samp{FX}
-(@samp{X} is a digit), and @samp{delete}. This table describes to which
-character each of the symbols corresponds:
-
address@hidden @samp
address@hidden exclam
address@hidden
-
address@hidden at
address@hidden@@}
-
address@hidden numbersign
address@hidden
-
address@hidden dollar
address@hidden
-
address@hidden percent
address@hidden
-
address@hidden caret
address@hidden
-
address@hidden ampersand
address@hidden&}
-
address@hidden asterisk
address@hidden
-
address@hidden parenleft
address@hidden(}
-
address@hidden parenright
address@hidden)}
-
address@hidden minus
address@hidden
-
address@hidden underscore
address@hidden
-
address@hidden equal
address@hidden
-
address@hidden plus
address@hidden
-
address@hidden bracketleft
address@hidden
-
address@hidden braceleft
address@hidden@{}
-
address@hidden bracketright
address@hidden
-
address@hidden braceright
address@hidden@}}
-
address@hidden semicolon
address@hidden;}
-
address@hidden colon
address@hidden:}
-
address@hidden quote
address@hidden'}
-
address@hidden doublequote
address@hidden"}
-
address@hidden backquote
address@hidden
-
address@hidden tilde
address@hidden
-
address@hidden backslash
address@hidden
-
address@hidden bar
address@hidden|}
-
address@hidden comma
address@hidden,}
-
address@hidden less
address@hidden<}
-
address@hidden period
address@hidden
-
address@hidden greater
address@hidden>}
-
address@hidden slash
address@hidden/}
-
address@hidden question
address@hidden
-
address@hidden space
address@hidden }
address@hidden table
address@hidden deffn
-
-
address@hidden terminal
address@hidden terminal
-
address@hidden Command terminal address@hidden address@hidden address@hidden 
address@hidden address@hidden address@hidden address@hidden address@hidden 
address@hidden
-Select a terminal for user interaction. The terminal is assumed to be
-VT100-compatible unless @option{--dumb} is specified. If both
address@hidden and @option{serial} are specified, then GRUB will use
-the one where a key is entered first or the first when the timeout
-expires. If neither are specified, the current setting is
-reported. This command is only available if GRUB is compiled with serial
-support. See also @ref{Serial terminal}.
-
-This may not make sense for most users, but GRUB supports Hercules
-console as well. Hercules console is usable like the ordinary console,
-and the usage is quite similar to that for serial terminals: specify
address@hidden as the argument.
-
-The option @option{--lines} defines the number of lines in your
-terminal, and it is used for the internal pager function. If you don't
-specify this option, the number is assumed as 24.
-
-The option @option{--silent} suppresses the message to prompt you to
-hit any key. This might be useful if your system has no terminal
-device.
-
-The option @option{--no-echo} has GRUB not to echo back input
-characters. This implies the option @option{--no-edit}.
-
-The option @option{--no-edit} disables the BASH-like editing feature.
address@hidden deffn
-
-
 @node terminfo
 @subsection terminfo
 
@@ -2604,31 +1102,6 @@
 @end deffn
 
 
address@hidden tftpserver
address@hidden tftpserver
-
address@hidden Command tftpserver ipaddr
address@hidden:} This command exists only for backward
-compatibility. Use @command{ifconfig} (@pxref{ifconfig}) instead.
-
-Override a TFTP server address returned by a BOOTP/DHCP/RARP server. The
-argument @var{ipaddr} must be in dotted decimal format, like
address@hidden  This command is only available if GRUB is compiled
-with netboot support. See also @ref{Network}.
address@hidden deffn
-
-
address@hidden unhide
address@hidden unhide
-
address@hidden Command unhide partition
-Unhide the partition @var{partition} by clearing the @dfn{hidden} bit in
-its partition type code. This is useful only when booting DOS or Windows
-and multiple primary partitions exist on one disk. See also
address@hidden/Windows}.
address@hidden deffn
-
-
 @node Command-line and menu entry commands
 @section The list of command-line and menu entry commands
 
@@ -2637,56 +1110,17 @@
 (@pxref{help}).
 
 @menu
-* blocklist::                   Get the block list notation of a file
 * boot::                        Start up your operating system
 * cat::                         Show the contents of a file
 * chainloader::                 Chain-load another boot loader
 * cmp::                         Compare two files
 * configfile::                  Load a configuration file
-* debug::                       Toggle the debug flag
-* displayapm::                  Display APM information
-* displaymem::                  Display memory configuration
-* embed::                       Embed Stage 1.5
-* find::                        Find a file
-* fstest::                      Test a filesystem
-* geometry::                    Manipulate the geometry of a drive
 * halt::                        Shut down your computer
 * help::                        Show help messages
-* impsprobe::                   Probe SMP
-* initrd::                      Load an initrd
-* install::                     Install GRUB
-* ioprobe::                     Probe I/O ports used for a drive
-* kernel::                      Load a kernel
-* lock::                        Lock a menu entry
-* makeactive::                  Make a partition active
-* map::                         Map a drive to another
-* md5crypt::                    Encrypt a password in MD5 format
-* module::                      Load a module
-* modulenounzip::               Load a module without decompression
-* pause::                       Wait for a key press
-* quit::                        Exit from the grub shell
 * reboot::                      Reboot your computer
-* read::                        Read data from memory
-* root::                        Set GRUB's root device
-* rootnoverify::                Set GRUB's root device without mounting
-* savedefault::                 Save current entry as the default entry
-* setup::                       Set up GRUB's installation automatically
-* testload::                    Load a file for testing a filesystem
-* testvbe::                     Test VESA BIOS EXTENSION
-* uppermem::                    Set the upper memory size
-* vbeprobe::                    Probe VESA BIOS EXTENSION
 @end menu
 
 
address@hidden blocklist
address@hidden blocklist
-
address@hidden Command blocklist file
-Print the block list notation of the file @var{file}. @xref{Block list
-syntax}.
address@hidden deffn
-
-
 @node boot
 @subsection boot
 
@@ -2753,93 +1187,6 @@
 @end deffn
 
 
address@hidden debug
address@hidden debug
-
address@hidden Command debug
-Toggle debug mode (by default it is off). When debug mode is on, some
-extra messages are printed to show disk activity. This global debug flag
-is mainly useful for GRUB developers when testing new code.
address@hidden deffn
-
-
address@hidden displayapm
address@hidden displayapm
-
address@hidden Command displayapm
-Display APM BIOS information.
address@hidden deffn
-
-
address@hidden displaymem
address@hidden displaymem
-
address@hidden Command displaymem
-Display what GRUB thinks the system address space map of the machine is,
-including all regions of physical @sc{ram} installed. GRUB's
address@hidden/lower memory} display uses the standard BIOS interface for
-the available memory in the first megabyte, or @dfn{lower memory}, and a
-synthesized number from various BIOS interfaces of the memory starting
-at 1MB and going up to the first chipset hole for @dfn{upper memory}
-(the standard PC @dfn{upper memory} interface is limited to reporting a
-maximum of 64MB).
address@hidden deffn
-
-
address@hidden embed
address@hidden embed
-
address@hidden Command embed stage1_5 device
-Embed the Stage 1.5 @var{stage1_5} in the sectors after the MBR if
address@hidden is a drive, or in the @dfn{boot loader} area if @var{device}
-is a FFS partition or a ReiserFS address@hidden latter feature
-has not been implemented yet.} Print the number of sectors which
address@hidden occupies, if successful.
-
-Usually, you don't need to run this command directly. @xref{setup}.
address@hidden deffn
-
-
address@hidden find
address@hidden find
-
address@hidden Command find filename
-Search for the file name @var{filename} in all mountable partitions
-and print the list of the devices which contain the file. The file
-name @var{filename} should be an absolute file name like
address@hidden/boot/grub/stage1}.
address@hidden deffn
-
-
address@hidden fstest
address@hidden fstest
-
address@hidden Command fstest
-Toggle filesystem test mode.
-Filesystem test mode, when turned on, prints out data corresponding to
-all the device reads and what values are being sent to the low-level
-routines. The format is @samp{<@var{partition-offset-sector},
address@hidden, @var{byte-length}>} for high-level reads inside a
-partition, and @address@hidden for low-level sector
-requests from the disk.
-Filesystem test mode is turned off by any use of the @command{install}
-(@pxref{install}) or @command{testload} (@pxref{testload}) commands.
address@hidden deffn
-
-
address@hidden geometry
address@hidden geometry
-
address@hidden Command geometry drive [cylinder head sector [total_sector]]
-Print the information for the drive @var{drive}. In the grub shell, you
-can set the geometry of the drive arbitrarily. The number of
-cylinders, the number of heads, the number of sectors and the number of
-total sectors are set to CYLINDER, HEAD, SECTOR and TOTAL_SECTOR,
-respectively. If you omit TOTAL_SECTOR, then it will be calculated
-based on the C/H/S values automatically.
address@hidden deffn
-
-
 @node halt
 @subsection halt
 
@@ -2865,220 +1212,6 @@
 @end deffn
 
 
address@hidden impsprobe
address@hidden impsprobe
-
address@hidden Command impsprobe
-Probe the Intel Multiprocessor Specification 1.1 or 1.4 configuration
-table and boot the various CPUs which are found into a tight loop. This
-command can be used only in the Stage 2, but not in the grub shell.
address@hidden deffn
-
-
address@hidden initrd
address@hidden initrd
-
address@hidden Command initrd file @dots{}
-Load an initial ramdisk for a Linux format boot image and set the
-appropriate parameters in the Linux setup area in memory. See also
address@hidden/Linux}.
address@hidden deffn
-
-
address@hidden install
address@hidden install
-
address@hidden Command install address@hidden address@hidden stage1_file 
address@hidden dest_dev stage2_file [addr] address@hidden [config_file] 
[real_config_file]
-This command is fairly complex, and you should not use this command
-unless you are familiar with GRUB. Use @command{setup} (@pxref{setup})
-instead.
-
-In short, it will perform a full install presuming the Stage 2 or Stage
address@hidden're loaded the same way, so we will refer to the Stage
-1.5 as a Stage 2 from now on.} is in its final install location.
-
-In slightly more detail, it will load @var{stage1_file}, validate that
-it is a GRUB Stage 1 of the right version number, install in it a
-blocklist for loading @var{stage2_file} as a Stage 2. If the option
address@hidden is present, the Stage 1 will always look for the actual
-disk @var{stage2_file} was installed on, rather than using the booting
-drive. The Stage 2 will be loaded at address @var{addr}, which must be
address@hidden for a true Stage 2, and @samp{0x2000} for a Stage 1.5. If
address@hidden is not present, GRUB will determine the address
-automatically. It then writes the completed Stage 1 to the first block
-of the device @var{dest_dev}. If the options @option{p} or
address@hidden are present, then it reads the first block of stage2,
-modifies it with the values of the partition @var{stage2_file} was found
-on (for @option{p}) or places the string @var{config_file} into the area
-telling the stage2 where to look for a configuration file at boot
-time. Likewise, if @var{real_config_file} is present and
address@hidden is a Stage 1.5, then the Stage 2 @var{config_file} is
-patched with the configuration file name @var{real_config_file}. This
-command preserves the DOS BPB (and for hard disks, the partition table)
-of the sector the Stage 1 is to be installed into.
-
address@hidden:} Several buggy BIOSes don't pass a booting drive
-properly when booting from a hard disk drive. Therefore, you will
-unfortunately have to specify the option @option{d}, whether your
-Stage2 resides at the booting drive or not, if you have such a
-BIOS. We know these are defective in this way:
-
address@hidden @asis
address@hidden
-Fujitsu LifeBook 400 BIOS version 31J0103A
-
address@hidden
-HP Vectra XU 6/200 BIOS version GG.06.11
address@hidden table
-
address@hidden:} A number of BIOSes don't return a correct LBA support
-bitmap even if they do have the support. So GRUB provides a solution to
-ignore the wrong bitmap, that is, the option @option{--force-lba}. Don't
-use this option if you know that your BIOS doesn't have LBA support.
-
address@hidden:} You must specify the option @option{--stage2} in the
-grub shell, if you cannot unmount the filesystem where your stage2 file
-resides. The argument should be the file name in your operating system.
address@hidden deffn
-
-
address@hidden ioprobe
address@hidden ioprobe
-
address@hidden Command ioprobe drive
-Probe I/O ports used for the drive @var{drive}. This command will list
-the I/O ports on the screen. For technical information,
address@hidden
address@hidden deffn
-
-
address@hidden kernel
address@hidden kernel
-
address@hidden Command kernel address@hidden address@hidden file @dots{}
-Attempt to load the primary boot image (Multiboot a.out or @sc{elf},
-Linux zImage or bzImage, FreeBSD a.out, NetBSD a.out, etc.) from
address@hidden The rest of the line is passed verbatim as the @dfn{kernel
-command-line}. Any modules must be reloaded after using this command.
-
-This command also accepts the option @option{--type} so that you can
-specify the kernel type of @var{file} explicitly. The argument
address@hidden must be one of these: @samp{netbsd}, @samp{freebsd},
address@hidden, @samp{linux}, @samp{biglinux}, and
address@hidden However, you need to specify it only if you want to
-load a NetBSD @sc{elf} kernel, because GRUB can automatically determine
-a kernel type in the other cases, quite safely.
-
-The option @option{--no-mem-option} is effective only for Linux. If the
-option is specified, GRUB doesn't pass the option @option{mem=} to the
-kernel.  This option is implied for Linux kernels 2.4.18 and newer.
address@hidden deffn
-
-
address@hidden lock
address@hidden lock
-
address@hidden Command lock
-Prevent normal users from executing arbitrary menu entries. You must use
-the command @command{password} if you really want this command to be
-useful (@pxref{password}).
-
-This command is used in a menu, as shown in this example:
-
address@hidden
address@hidden
-title This entry is too dangerous to be executed by normal users
-lock
-root (hd0,a)
-kernel /no-security-os
address@hidden group
address@hidden example
-
-See also @ref{Security}.
address@hidden deffn
-
-
address@hidden makeactive
address@hidden makeactive
-
address@hidden Command makeactive
-Set the active partition on the root disk to GRUB's root device.
-This command is limited to @emph{primary} PC partitions on a hard disk.
address@hidden deffn
-
-
address@hidden map
address@hidden map
-
address@hidden Command map to_drive from_drive
-Map the drive @var{from_drive} to the drive @var{to_drive}. This is
-necessary when you chain-load some operating systems, such as DOS, if
-such an OS resides at a non-first drive. Here is an example:
-
address@hidden
address@hidden
-grub> @kbd{map (hd0) (hd1)}
-grub> @kbd{map (hd1) (hd0)}
address@hidden group
address@hidden example
-
-The example exchanges the order between the first hard disk and the
-second hard disk. See also @ref{DOS/Windows}.
address@hidden deffn
-
-
address@hidden md5crypt
address@hidden md5crypt
-
address@hidden Command md5crypt
-Prompt to enter a password, and encrypt it in MD5 format. The encrypted
-password can be used with the command @command{password}
-(@pxref{password}). See also @ref{Security}.
address@hidden deffn
-
-
address@hidden module
address@hidden module
-
address@hidden Command module file @dots{}
-Load a boot module @var{file} for a Multiboot format boot image (no
-interpretation of the file contents are made, so the user of this
-command must know what the kernel in question expects). The rest of the
-line is passed as the @dfn{module command-line}, like the
address@hidden command. You must load a Multiboot kernel image before
-loading any module. See also @ref{modulenounzip}.
address@hidden deffn
-
-
address@hidden modulenounzip
address@hidden modulenounzip
-
address@hidden Command modulenounzip file @dots{}
-The same as @command{module} (@pxref{module}), except that automatic
-decompression is disabled.
address@hidden deffn
-
-
address@hidden pause
address@hidden pause
-
address@hidden Command pause message @dots{}
-Print the @var{message}, then wait until a key is pressed. Note that
-placing @key{^G} (ASCII code 7) in the message will cause the speaker to
-emit the standard beep sound, which is useful when prompting the user to
-change floppies.
address@hidden deffn
-
-
address@hidden quit
address@hidden quit
-
address@hidden Command quit
-Exit from the grub shell @command{grub} (@pxref{Invoking the grub
-shell}). This command can be used only in the grub shell.
address@hidden deffn
-
-
 @node reboot
 @subsection reboot
 
@@ -3087,551 +1220,6 @@
 @end deffn
 
 
address@hidden read
address@hidden read
-
address@hidden Command read addr
-Read a 32-bit value from memory at address @var{addr} and display it in
-hex format.
address@hidden deffn
-
-
address@hidden root
address@hidden root
-
address@hidden Command root device [hdbias]
-Set the current @dfn{root device} to the device @var{device}, then
-attempt to mount it to get the partition size (for passing the partition
-descriptor in @code{ES:ESI}, used by some chain-loaded boot loaders), the
-BSD drive-type (for booting BSD kernels using their native boot format),
-and correctly determine the PC partition where a BSD sub-partition is
-located. The optional @var{hdbias} parameter is a number to tell a BSD
-kernel how many BIOS drive numbers are on controllers before the current
-one. For example, if there is an IDE disk and a SCSI disk, and your
-FreeBSD root partition is on the SCSI disk, then use a @samp{1} for
address@hidden
-
-See also @ref{rootnoverify}.
address@hidden deffn
-
-
address@hidden rootnoverify
address@hidden rootnoverify
-
address@hidden Command rootnoverify device [hdbias]
-Similar to @command{root} (@pxref{root}), but don't attempt to mount the
-partition. This is useful for when an OS is outside of the area of the
-disk that GRUB can read, but setting the correct root device is still
-desired. Note that the items mentioned in @command{root} above which
-derived from attempting the mount will @emph{not} work correctly.
address@hidden deffn
-
-
address@hidden savedefault
address@hidden savedefault
-
address@hidden Command savedefault num
-Save the current menu entry or @var{num} if specified as a default
-entry. Here is an example:
-
address@hidden
address@hidden
-default saved
-timeout 10
-
-title GNU/Linux
-root (hd0,0)
-kernel /boot/vmlinuz root=/dev/sda1 vga=ext
-initrd /boot/initrd
-savedefault
-
-title FreeBSD
-root (hd0,a)
-kernel /boot/loader
-savedefault
address@hidden group
address@hidden example
-
-With this configuration, GRUB will choose the entry booted previously as
-the default entry.
-
-You can specify @samp{fallback} instead of a number. Then, next
-fallback entry is saved. Next fallback entry is chosen from fallback
-entries. Normally, this will be the first entry in fallback ones.
-
-See also @ref{default} and @ref{Invoking grub-set-default}.
address@hidden deffn
-
-
address@hidden setup
address@hidden setup
-
address@hidden Command setup address@hidden address@hidden address@hidden 
install_device [image_device]
-Set up the installation of GRUB automatically. This command uses the
-more flexible command @command{install} (@pxref{install}) in the backend
-and installs GRUB into the device @var{install_device}. If
address@hidden is specified, then find the GRUB images
-(@pxref{Images}) in the device @var{image_device}, otherwise use the
-current @dfn{root device}, which can be set by the command
address@hidden If @var{install_device} is a hard disk, then embed a
-Stage 1.5 in the disk if possible.
-
-The option @option{--prefix} specifies the directory under which GRUB
-images are put. If it is not specified, GRUB automatically searches them
-in @file{/boot/grub} and @file{/grub}.
-
-The options @option{--force-lba} and @option{--stage2} are just passed
-to @command{install} if specified. @xref{install}, for more
-information.
address@hidden deffn
-
-
address@hidden testload
address@hidden testload
-
address@hidden Command testload file
-Read the entire contents of @var{file} in several different ways and
-compare them, to test the filesystem code. The output is somewhat
-cryptic, but if no errors are reported and the final @address@hidden,
address@hidden reading has @var{X} and @var{Y} equal, then it is
-definitely consistent, and very likely works correctly subject to a
-consistent offset error. If this test succeeds, then a good next step is
-to try loading a kernel.
address@hidden deffn
-
-
address@hidden testvbe
address@hidden testvbe
-
address@hidden Command testvbe mode
-Test the VESA BIOS EXTENSION mode @var{mode}. This command will switch
-your video card to the graphics mode, and show an endless animation. Hit
-any key to return. See also @ref{vbeprobe}.
address@hidden deffn
-
-
address@hidden uppermem
address@hidden uppermem
-
address@hidden Command uppermem kbytes
-Force GRUB to assume that only @var{kbytes} kilobytes of upper memory
-are installed. Any system address range maps are discarded.
-
address@hidden:} This should be used with great caution, and should
-only be necessary on some old machines. GRUB's BIOS probe can pick up
-all @sc{ram} on all new machines the author has ever heard of. It can
-also be used for debugging purposes to lie to an OS.
address@hidden deffn
-
-
address@hidden vbeprobe
address@hidden vbeprobe
-
address@hidden Command vbeprobe [mode]
-Probe VESA BIOS EXTENSION information. If the mode @var{mode} is
-specified, show only the information about @var{mode}. Otherwise, this
-command lists up available VBE modes on the screen. See also
address@hidden
address@hidden deffn
-
-
address@hidden Troubleshooting
address@hidden Error messages reported by GRUB
-
-This chapter describes error messages reported by GRUB when you
-encounter trouble. @xref{Invoking the grub shell}, if your problem is
-specific to the grub shell.
-
address@hidden
-* Stage1 errors::               Errors reported by the Stage 1
-* Stage1.5 errors::             Errors reported by the Stage 1.5
-* Stage2 errors::               Errors reported by the Stage 2
address@hidden menu
-
-
address@hidden Stage1 errors
address@hidden Errors reported by the Stage 1
-
-The general way that the Stage 1 handles errors is to print an error
-string and then halt. Pressing @address@hidden@address@hidden will
-reboot.
-
-The following is a comprehensive list of error messages for the Stage 1:
-
address@hidden @asis
address@hidden Hard Disk Error
-The stage2 or stage1.5 is being read from a hard disk, and the attempt
-to determine the size and geometry of the hard disk failed.
-
address@hidden Floppy Error
-The stage2 or stage1.5 is being read from a floppy disk, and the attempt
-to determine the size and geometry of the floppy disk failed. It's listed
-as a separate error since the probe sequence is different than for hard
-disks.
-
address@hidden Read Error
-A disk read error happened while trying to read the stage2 or stage1.5.
-
address@hidden Geom Error
-The location of the stage2 or stage1.5 is not in the portion of the disk
-supported directly by the BIOS read calls.  This could occur because the
-BIOS translated geometry has been changed by the user or the disk is
-moved to another machine or controller after installation, or GRUB was
-not installed using itself (if it was, the Stage 2 version of this error
-would have been seen during that process and it would not have completed
-the install).
address@hidden table
-
-
address@hidden Stage1.5 errors
address@hidden Errors reported by the Stage 1.5
-
-The general way that the Stage 1.5 handles errors is to print an error
-number in the form @code{Error @var{num}} and then halt. Pressing
address@hidden@address@hidden@key{DEL}} will reboot.
-
-The error numbers correspond to the errors reported by Stage
-2. @xref{Stage2 errors}.
-
-
address@hidden Stage2 errors
address@hidden Errors reported by the Stage 2
-
-The general way that the Stage 2 handles errors is to abort the
-operation in question, print an error string, then (if possible) either
-continue based on the fact that an error occurred or wait for the user to
-deal with the error.
-
-The following is a comprehensive list of error messages for the Stage 2
-(error numbers for the Stage 1.5 are listed before the colon in each
-description):
-
address@hidden @asis
address@hidden 1 : Filename must be either an absolute filename or blocklist
-This error is returned if a file name is requested which doesn't fit the
-syntax/rules listed in the @ref{Filesystem}.
-
address@hidden 2 : Bad file or directory type
-This error is returned if a file requested is not a regular file, but
-something like a symbolic link, directory, or FIFO.
-
address@hidden 3 : Bad or corrupt data while decompressing file
-This error is returned if the run-length decompression code gets an
-internal error. This is usually from a corrupt file.
-
address@hidden 4 : Bad or incompatible header in compressed file
-This error is returned if the file header for a supposedly compressed
-file is bad.
-
address@hidden 5 : Partition table invalid or corrupt
-This error is returned if the sanity checks on the integrity of the
-partition table fail. This is a bad sign.
-
address@hidden 6 : Mismatched or corrupt version of stage1/stage2
-This error is returned if the install command points to incompatible
-or corrupt versions of the stage1 or stage2. It can't detect corruption
-in general, but this is a sanity check on the version numbers, which
-should be correct.
-
address@hidden 7 : Loading below 1MB is not supported
-This error is returned if the lowest address in a kernel is below the
-1MB boundary. The Linux zImage format is a special case and can be
-handled since it has a fixed loading address and maximum size.
-
address@hidden 8 : Kernel must be loaded before booting
-This error is returned if GRUB is told to execute the boot sequence
-without having a kernel to start.
-
address@hidden 9 : Unknown boot failure
-This error is returned if the boot attempt did not succeed for reasons
-which are unknown.
-
address@hidden 10 : Unsupported Multiboot features requested
-This error is returned when the Multiboot features word in the Multiboot
-header requires a feature that is not recognized. The point of this is
-that the kernel requires special handling which GRUB is probably
-unable to provide.
-
address@hidden 11 : Unrecognized device string
-This error is returned if a device string was expected, and the string
-encountered didn't fit the syntax/rules listed in the @ref{Filesystem}.
-
address@hidden 12 : Invalid device requested
-This error is returned if a device string is recognizable but does not
-fall under the other device errors.
-
address@hidden 13 : Invalid or unsupported executable format
-This error is returned if the kernel image being loaded is not
-recognized as Multiboot or one of the supported native formats (Linux
-zImage or bzImage, FreeBSD, or NetBSD).
-
address@hidden 14 : Filesystem compatibility error, cannot read whole file
-Some of the filesystem reading code in GRUB has limits on the length of
-the files it can read. This error is returned when the user runs into
-such a limit.
-
address@hidden 15 : File not found
-This error is returned if the specified file name cannot be found, but
-everything else (like the disk/partition info) is OK.
-
address@hidden 16 : Inconsistent filesystem structure
-This error is returned by the filesystem code to denote an internal
-error caused by the sanity checks of the filesystem structure on disk
-not matching what it expects. This is usually caused by a corrupt
-filesystem or bugs in the code handling it in GRUB.
-
address@hidden 17 : Cannot mount selected partition
-This error is returned if the partition requested exists, but the
-filesystem type cannot be recognized by GRUB.
-
address@hidden 18 : Selected cylinder exceeds maximum supported by BIOS
-This error is returned when a read is attempted at a linear block
-address beyond the end of the BIOS translated area. This generally
-happens if your disk is larger than the BIOS can handle (512MB for
-(E)IDE disks on older machines or larger than 8GB in general).
-
address@hidden 19 : Linux kernel must be loaded before initrd
-This error is returned if the initrd command is used before loading a
-Linux kernel.
-
address@hidden 20 : Multiboot kernel must be loaded before modules
-This error is returned if the module load command is used before loading
-a Multiboot kernel. It only makes sense in this case anyway, as GRUB has
-no idea how to communicate the presence of such modules to a
-non-Multiboot-aware kernel.
-
address@hidden 21 : Selected disk does not exist
-This error is returned if the device part of a device- or full file name
-refers to a disk or BIOS device that is not present or not recognized by
-the BIOS in the system.
-
address@hidden 22 : No such partition
-This error is returned if a partition is requested in the device part of
-a device- or full file name which isn't on the selected disk.
-
address@hidden 23 : Error while parsing number
-This error is returned if GRUB was expecting to read a number and
-encountered bad data.
-
address@hidden 24 : Attempt to access block outside partition
-This error is returned if a linear block address is outside of the disk
-partition. This generally happens because of a corrupt filesystem on the
-disk or a bug in the code handling it in GRUB (it's a great debugging
-tool).
-
address@hidden 25 : Disk read error
-This error is returned if there is a disk read error when trying to
-probe or read data from a particular disk.
-
address@hidden 26 : Too many symbolic links
-This error is returned if the link count is beyond the maximum
-(currently 5), possibly the symbolic links are looped.
-
address@hidden 27 : Unrecognized command
-This error is returned if an unrecognized command is entered on the
-command-line or in a boot sequence section of a configuration file and
-that entry is selected.
-
address@hidden 28 : Selected item cannot fit into memory
-This error is returned if a kernel, module, or raw file load command is
-either trying to load its data such that it won't fit into memory or it
-is simply too big.
-
address@hidden 29 : Disk write error
-This error is returned if there is a disk write error when trying to
-write to a particular disk. This would generally only occur during an
-install of set active partition command.
-
address@hidden 30 : Invalid argument
-This error is returned if an argument specified to a command is invalid.
-
address@hidden 31 : File is not sector aligned
-This error may occur only when you access a ReiserFS partition by
-block-lists (e.g. the command @command{install}). In this case, you
-should mount the partition with the @samp{-o notail} option.
-
address@hidden 32 : Must be authenticated
-This error is returned if you try to run a locked entry. You should
-enter a correct password before running such an entry.
-
address@hidden 33 : Serial device not configured
-This error is returned if you try to change your terminal to a serial
-one before initializing any serial device.
-
address@hidden 34 : No spare sectors on the disk
-This error is returned if a disk doesn't have enough spare space. This
-happens when you try to embed Stage 1.5 into the unused sectors after
-the MBR, but the first partition starts right after the MBR or they are
-used by EZ-BIOS.
address@hidden table
-
-
address@hidden Invoking the grub shell
address@hidden Invoking the grub shell
-
-This chapter documents the grub shell @command{grub}. Note that the grub
-shell is an emulator; it doesn't run under the native environment, so it
-sometimes does something wrong. Therefore, you shouldn't trust it too
-much. If there is anything wrong with it, don't hesitate to try the
-native GRUB environment, especially when it guesses a wrong map between
-BIOS drives and OS devices.
-
address@hidden
-* Basic usage::                 How to use the grub shell
-* Installation under UNIX::     How to install GRUB via @command{grub}
-* Device map::                  The map between BIOS drives and OS devices
address@hidden menu
-
-
address@hidden Basic usage
address@hidden Introduction into the grub shell
-
-You can use the command @command{grub} for installing GRUB under your
-operating systems and for a testbed when you add a new feature into GRUB
-or when fixing a bug. @command{grub} is almost the same as the Stage 2,
-and, in fact, it shares the source code with the Stage 2 and you can use
-the same commands (@pxref{Commands}) in @command{grub}. It is emulated by
-replacing BIOS calls with UNIX system calls and libc functions.
-
-The command @command{grub} accepts the following options:
-
address@hidden @option
address@hidden --help
-Print a summary of the command-line options and exit.
-
address@hidden --version
-Print the version number of GRUB and exit.
-
address@hidden --verbose
-Print some verbose messages for debugging purpose.
-
address@hidden address@hidden
-Use the device map file @var{file}. The format is described in
address@hidden map}.
-
address@hidden --no-floppy
-Do not probe any floppy drive. This option has no effect if the option
address@hidden is specified (@pxref{Device map}).
-
address@hidden --probe-second-floppy
-Probe the second floppy drive. If this option is not specified, the grub
-shell does not probe it, as that sometimes takes a long time. If you
-specify the device map file (@pxref{Device map}), the grub shell just
-ignores this option.
-
address@hidden address@hidden
-Read the configuration file @var{file} instead of
address@hidden/boot/grub/menu.lst}. The format is the same as the normal GRUB
-syntax. See @ref{Filesystem}, for more information.
-
address@hidden address@hidden
-Set the stage2 @var{boot_drive} to @var{drive}. This argument should be
-an integer (decimal, octal or hexadecimal).
-
address@hidden address@hidden
-Set the stage2 @var{install_partition} to @var{par}. This argument
-should be an integer (decimal, octal or hexadecimal).
-
address@hidden --no-config-file
-Do not use the configuration file even if it can be read.
-
address@hidden --no-curses
-Do not use the screen handling interface by the curses even if it is
-available.
-
address@hidden --batch
-This option has the same meaning as @samp{--no-config-file --no-curses}.
-
address@hidden --read-only
-Disable writing to any disk.
-
address@hidden --hold
-Wait until a debugger will attach. This option is useful when you want
-to debug the startup code.
address@hidden table
-
-
address@hidden Installation under UNIX
address@hidden How to install GRUB via @command{grub}
-
-The installation procedure is the same as under the @dfn{native} Stage
-2. @xref{Installation}, for more information. The command
address@hidden information is described here.
-
-What you should be careful about is @dfn{buffer cache}. @command{grub}
-makes use of raw devices instead of filesystems that your operating
-systems serve, so there exists a potential problem that some cache
-inconsistency may corrupt your filesystems. What we recommend is:
-
address@hidden @bullet
address@hidden
-If you can unmount drives to which GRUB may write any amount of data,
-unmount them before running @command{grub}.
-
address@hidden
-If a drive cannot be unmounted but can be mounted with the read-only
-flag, mount it in read-only mode. That should be secure.
-
address@hidden
-If a drive must be mounted with the read-write flag, make sure that no
-activity is being done on it while the command @command{grub} is
-running.
-
address@hidden
-Reboot your operating system as soon as possible. This is probably not
-required if you follow the rules above, but reboot is the most secure
-way.
address@hidden itemize
-
-In addition, enter the command @command{quit} when you finish the
-installation. That is @emph{very important} because @command{quit} makes
-the buffer cache consistent. Do not push @key{C-c}.
-
-If you want to install GRUB non-interactively, specify @samp{--batch}
-option in the command-line. This is a simple example:
-
address@hidden
address@hidden
-#!/bin/sh
-
-# Use /usr/sbin/grub if you are on an older system.
-/sbin/grub --batch <<EOT 1>/dev/null 2>/dev/null
-root (hd0,0)
-setup (hd0)
-quit
-EOT
address@hidden group
address@hidden example
-
-
address@hidden Device map
address@hidden The map between BIOS drives and OS devices
-
-When you specify the option @option{--device-map} (@pxref{Basic usage}),
-the grub shell creates the @dfn{device map file} automatically unless it
-already exists. The file name @file{/boot/grub/device.map} is preferred.
-
-If the device map file exists, the grub shell reads it to map BIOS
-drives to OS devices. This file consists of lines like this:
-
address@hidden
address@hidden @var{file}
address@hidden example
-
address@hidden is a drive specified in the GRUB syntax (@pxref{Device
-syntax}), and @var{file} is an OS file, which is normally a device
-file.
-
-The reason why the grub shell gives you the device map file is that it
-cannot guess the map between BIOS drives and OS devices correctly in
-some environments. For example, if you exchange the boot sequence
-between IDE and SCSI in your BIOS, it gets the order wrong.
-
-Thus, edit the file if the grub shell makes a mistake. You can put any
-comments in the file if needed, as the grub shell assumes that a line is
-just a comment if the first character is @samp{#}.
-
-
 @node Invoking grub-install
 @chapter Invoking grub-install
 
@@ -3655,11 +1243,6 @@
 @item --version
 Print the version number of GRUB and exit.
 
address@hidden --force-lba
-Force GRUB to use LBA mode even for a buggy BIOS. Use this option only
-if your BIOS doesn't work properly in LBA mode even though it supports
-LBA mode.
-
 @item address@hidden
 Install GRUB images under the directory @var{dir} instead of the root
 directory. This option is useful when you want to install GRUB into a
@@ -3671,14 +1254,6 @@
 @kbd{grub-install --root-directory=/boot hd0}
 @end example
 
address@hidden address@hidden
-Use @var{file} as the grub shell. You can append arbitrary options to
address@hidden after the file name, like this:
-
address@hidden
address@hidden --grub-shell="grub --read-only" /dev/fd0}
address@hidden example
-
 @item --recheck
 Recheck the device map, even if @file{/boot/grub/device.map} already
 exists. You should use this option whenever you add/remove a disk
@@ -3686,137 +1261,6 @@
 @end table
 
 
address@hidden Invoking grub-md5-crypt
address@hidden Invoking grub-md5-crypt
-
-The program @command{grub-md5-crypt} encrypts a password in MD5 format.
-This is just a frontend of the grub shell (@pxref{Invoking the grub
-shell}). Passwords encrypted by this program can be used with the
-command @command{password} (@pxref{password}).
-
address@hidden accepts the following options:
-
address@hidden @option
address@hidden --help
-Print a summary of the command-line options and exit.
-
address@hidden --version
-Print the version information and exit.
-
address@hidden address@hidden
-Use @var{file} as the grub shell.
address@hidden table
-
-
address@hidden Invoking grub-terminfo
address@hidden Invoking grub-terminfo
-
-The program @command{grub-terminfo} generates a terminfo command from
-a terminfo name (@pxref{terminfo}). The result can be used in the
-configuration file, to define escape sequences. Because GRUB assumes
-that your terminal is vt100-compatible by default, this would be
-useful only if your terminal is uncommon (such as vt52).
-
address@hidden accepts the following options:
-
address@hidden @option
address@hidden --help
-Print a summary of the command-line options and exit.
-
address@hidden --version
-Print the version information and exit.
address@hidden table
-
-You must specify one argument to this command. For example:
-
address@hidden
address@hidden vt52}
address@hidden example
-
-
address@hidden Invoking grub-set-default
address@hidden Invoking grub-set-default
-
-The program @command{grub-set-default} sets the default boot entry for
-GRUB. This automatically creates a file named @file{default} under
-your GRUB directory (i.e. @file{/boot/grub}), if it is not
-present. This file is used to determine the default boot entry when
-GRUB boots up your system when you use @samp{default saved} in your
-configuration file (@pxref{default}), and to save next default boot
-entry when you use @samp{savedefault} in a boot entry
-(@pxref{savedefault}).
-
address@hidden accepts the following options:
-
address@hidden @option
address@hidden --help
-Print a summary of the command-line options and exit.
-
address@hidden --version
-Print the version information and exit.
-
address@hidden address@hidden
-Use the directory @var{dir} instead of the root directory
-(i.e. @file{/}) to define the location of the default file. This
-is useful when you mount a disk which is used for another system.
address@hidden table
-
-You must specify a single argument to @command{grub-set-default}. This
-argument is normally the number of a default boot entry. For example,
-if you have this configuration file:
-
address@hidden
address@hidden
-default saved
-timeout 10
-
-title GNU/Hurd
-root (hd0,0)
-...
-
-title GNU/Linux
-root (hd0,1)
-...
address@hidden group
address@hidden example
-
-and if you want to set the next default boot entry to GNU/Linux, you
-may execute this command:
-
address@hidden
address@hidden 1}
address@hidden example
-
-Because the entry for GNU/Linux is @samp{1}. Note that entries are
-counted from zero. So, if you want to specify GNU/Hurd here, then you
-should specify @samp{0}.
-
-This feature is very useful if you want to test a new kernel or to
-make your system quite robust. @xref{Making your system robust}, for
-more hints about how to set up a robust system.
-
-
address@hidden Invoking mbchk
address@hidden Invoking mbchk
-
-The program @command{mbchk} checks for the format of a Multiboot
-kernel. We recommend using this program before booting your own kernel
-by GRUB.
-
address@hidden accepts the following options:
-
address@hidden @option
address@hidden --help
-Print a summary of the command-line options and exit.
-
address@hidden --version
-Print the version number of GRUB and exit.
-
address@hidden --quiet
-Suppress all normal output.
address@hidden table
-
-
 @node Obtaining and Building GRUB
 @appendix How to obtain and build GRUB
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]