* docs/grub.texi (Installation): Fix several outdated claims.
This commit is contained in:
parent
2217a1430e
commit
0cac83df85
2 changed files with 20 additions and 46 deletions
|
@ -1,3 +1,7 @@
|
|||
2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* docs/grub.texi (Installation): Fix several outdated claims.
|
||||
|
||||
2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
Handle module_license on windows.
|
||||
|
|
|
@ -528,21 +528,15 @@ system (@pxref{Obtaining and Building GRUB}). You can do this either
|
|||
from the source tarball, or as a package for your OS.
|
||||
|
||||
After you have done that, you need to install the boot loader on a
|
||||
drive (floppy or hard disk). There are two ways of doing that - either
|
||||
using the utility @command{grub-install} (@pxref{Invoking
|
||||
grub-install}) on a UNIX-like OS, or by running GRUB itself from a
|
||||
floppy. These are quite similar, however the utility might probe a
|
||||
wrong BIOS drive, so you should be careful.
|
||||
|
||||
Also, if you install GRUB on a UNIX-like OS, please make sure that you
|
||||
have an emergency boot disk ready, so that you can rescue your computer
|
||||
if, by any chance, your hard drive becomes unusable (unbootable).
|
||||
drive (floppy or hard disk) by using the utility
|
||||
@command{grub-install} (@pxref{Invoking grub-install}) on a UNIX-like OS.
|
||||
|
||||
GRUB comes with boot images, which are normally put in the directory
|
||||
@file{/usr/lib/grub/i386-pc}. Hereafter, the directory where GRUB images are
|
||||
initially placed (normally @file{/usr/lib/grub/i386-pc}) will be
|
||||
@file{/usr/lib/grub/<cpu>-<platform>} (for BIOS-based machines
|
||||
@file{/usr/lib/grub/i386-pc}). Hereafter, the directory where GRUB images are
|
||||
initially placed (normally @file{/usr/lib/grub/<cpu>-<platform>}) 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
|
||||
loader needs to find them (usually @file{/boot}) will be called
|
||||
the @dfn{boot directory}.
|
||||
|
||||
@menu
|
||||
|
@ -556,27 +550,18 @@ the @dfn{boot directory}.
|
|||
@node Installing GRUB using grub-install
|
||||
@section Installing GRUB using grub-install
|
||||
|
||||
@strong{Caution:} This procedure is definitely less safe, because
|
||||
there are several ways in which your computer can become
|
||||
unbootable. For example, most operating systems don't tell GRUB how to
|
||||
map BIOS drives to OS devices correctly---GRUB merely @dfn{guesses}
|
||||
the mapping. This will succeed in most cases, but not
|
||||
always. Therefore, GRUB provides you with a map file called the
|
||||
@dfn{device map}, which you must fix if it is wrong. @xref{Device
|
||||
map}, for more details.
|
||||
|
||||
For information on where GRUB should be installed on PC BIOS platforms,
|
||||
@pxref{BIOS installation}.
|
||||
|
||||
If you still do want to install GRUB under a UNIX-like OS (such
|
||||
In order to install GRUB under a UNIX-like OS (such
|
||||
as @sc{gnu}), invoke the program @command{grub-install} (@pxref{Invoking
|
||||
grub-install}) as the superuser (@dfn{root}).
|
||||
|
||||
The usage is basically very simple. You only need to specify one
|
||||
argument to the program, namely, where to install the boot loader. The
|
||||
argument can be either a device file (like @samp{/dev/hda}) or a
|
||||
partition specified in GRUB's notation. For example, under Linux the
|
||||
following will install GRUB into the MBR of the first IDE disk:
|
||||
argument has to be either a device file (like @samp{/dev/hda}).
|
||||
For example, under Linux the following will install GRUB into the MBR
|
||||
of the first IDE disk:
|
||||
|
||||
@example
|
||||
# @kbd{grub-install /dev/hda}
|
||||
|
@ -588,37 +573,22 @@ Likewise, under GNU/Hurd, this has the same effect:
|
|||
# @kbd{grub-install /dev/hd0}
|
||||
@end example
|
||||
|
||||
But all the above examples assume that GRUB should use images under
|
||||
the root directory. If you want GRUB to use images under a directory
|
||||
other than the root directory, you need to specify the option
|
||||
@option{--root-directory}. The typical usage is that you create a GRUB
|
||||
But all the above examples assume that GRUB should put images under
|
||||
the @file{/boot} directory. If you want GRUB to put images under a directory
|
||||
other than @file{/boot}, you need to specify the option
|
||||
@option{--boot-directory}. The typical usage is that you create a GRUB
|
||||
boot floppy with a filesystem. Here is an example:
|
||||
|
||||
@example
|
||||
@group
|
||||
# @kbd{mke2fs /dev/fd0}
|
||||
# @kbd{mount -t ext2 /dev/fd0 /mnt}
|
||||
# @kbd{grub-install --root-directory=/mnt fd0}
|
||||
# @kbd{mkdir /mnt/boot}
|
||||
# @kbd{grub-install --boot-directory=/mnt/boot /dev/fd0}
|
||||
# @kbd{umount /mnt}
|
||||
@end group
|
||||
@end example
|
||||
|
||||
Another example is when you have a separate boot partition
|
||||
which is mounted at @file{/boot}. Since GRUB is a boot loader, it
|
||||
doesn't know anything about mountpoints at all. Thus, you need to run
|
||||
@command{grub-install} like this:
|
||||
|
||||
@example
|
||||
# @kbd{grub-install --root-directory=/boot /dev/hda}
|
||||
@end example
|
||||
|
||||
By the way, as noted above, it is quite difficult to guess BIOS drives
|
||||
correctly under a UNIX-like OS. Thus, @command{grub-install} will prompt
|
||||
you to check if it could really guess the correct mappings, after the
|
||||
installation. The format is defined in @ref{Device map}. Please be
|
||||
quite careful. If the output is wrong, it is unlikely that your
|
||||
computer will be able to boot with no problem.
|
||||
|
||||
Some BIOSes have a bug of exposing the first partition of a USB drive as a
|
||||
floppy instead of exposing the USB drive as a hard disk (they call it
|
||||
``USB-FDD'' boot). In such cases, you need to install like this:
|
||||
|
|
Loading…
Reference in a new issue