~darkmuggle-deactivatedaccount/ubuntu/quantal/grub2/fix-872244

« back to all changes in this revision

Viewing changes to docs/grub.info

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson
  • Date: 2011-05-17 23:59:10 UTC
  • mto: (17.3.55 sid)
  • mto: This revision was merged to the branch mainline in revision 122.
  • Revision ID: james.westby@ubuntu.com-20110517235910-ma8u889vyjdfro27
Tags: upstream-1.99
ImportĀ upstreamĀ versionĀ 1.99

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
This is /home/phcoder/grub2/bzr/mainline/docs/grub.info, produced by
 
1
This is /home/phcoder/grub2/bzr/grub-1.99/docs/grub.info, produced by
2
2
makeinfo version 4.13 from
3
 
/home/phcoder/grub2/bzr/mainline/docs/grub.texi.
 
3
/home/phcoder/grub2/bzr/grub-1.99/docs/grub.texi.
4
4
 
5
 
This manual is for GNU GRUB (version 1.99~rc1, 8 January 2011).
 
5
This manual is for GNU GRUB (version 1.99, 14 May 2011).
6
6
 
7
7
   Copyright (C) 1999,2000,2001,2002,2004,2006,2008,2009,2010 Free
8
8
Software Foundation, Inc.
18
18
* grub-install: (grub)Invoking grub-install.    Install GRUB on your drive
19
19
* grub-mkconfig: (grub)Invoking grub-mkconfig.  Generate GRUB configuration
20
20
* grub-mkpasswd-pbkdf2: (grub)Invoking grub-mkpasswd-pbkdf2.
 
21
* grub-mkrescue: (grub)Invoking grub-mkrescue.  Make a GRUB rescue image
21
22
END-INFO-DIR-ENTRY
22
23
 
23
24
 
30
31
flexible and powerful boot loader program for a wide range of
31
32
architectures.
32
33
 
33
 
   This edition documents version 1.99~rc1.
 
34
   This edition documents version 1.99.
34
35
 
35
 
   This manual is for GNU GRUB (version 1.99~rc1, 8 January 2011).
 
36
   This manual is for GNU GRUB (version 1.99, 14 May 2011).
36
37
 
37
38
   Copyright (C) 1999,2000,2001,2002,2004,2006,2008,2009,2010 Free
38
39
Software Foundation, Inc.
56
57
* Images::                      GRUB image files
57
58
* Filesystem::                  Filesystem syntax and semantics
58
59
* Interface::                   The menu and the command-line
 
60
* Environment::                 GRUB environment variables
59
61
* Commands::                    The list of available builtin commands
60
62
* Security::                    Authentication and authorisation
61
63
* Supported kernels::           The list of supported kernels
64
66
* Invoking grub-mkconfig::      Generate a GRUB configuration file
65
67
* Invoking grub-mkpasswd-pbkdf2::
66
68
                                Generate GRUB password hashes
 
69
* Invoking grub-mkrescue::      Make a GRUB rescue image
67
70
* Obtaining and Building GRUB:: How to obtain and build GRUB
68
71
* Reporting bugs::              Where you should send a bug report
69
72
* Future::                      Some future plans on GRUB
70
 
* Internals::                   Hacking GRUB
71
73
* Copying This Manual::         Copying This Manual
72
74
* Index::
73
75
 
204
206
 
205
207
   * A small amount of persistent storage is available across reboots,
206
208
     using the `save_env' and `load_env' commands in GRUB and the
207
 
     `grub-editenv' utility. For safety reasons this storage is only
208
 
     available when installed on plain disk (no LVM or RAID), using
209
 
     non-checksumming filesystem (no ZFS) and using BIOS or EFI
210
 
     functions (no ATA, USB or IEEE1275)
 
209
     `grub-editenv' utility.  This is not available in all
 
210
     configurations (*note Environment block::).
211
211
 
212
212
   * GRUB 2 has more reliable ways to find its own files and those of
213
213
     target kernels on multiple-disk systems, and has commands (*note
498
498
source tarball, or as a package for your OS.
499
499
 
500
500
   After you have done that, you need to install the boot loader on a
501
 
drive (floppy or hard disk). There are two ways of doing that - either
502
 
using the utility `grub-install' (*note Invoking grub-install::) on a
503
 
UNIX-like OS, or by running GRUB itself from a floppy. These are quite
504
 
similar, however the utility might probe a wrong BIOS drive, so you
505
 
should be careful.
506
 
 
507
 
   Also, if you install GRUB on a UNIX-like OS, please make sure that
508
 
you have an emergency boot disk ready, so that you can rescue your
509
 
computer if, by any chance, your hard drive becomes unusable
510
 
(unbootable).
 
501
drive (floppy or hard disk) by using the utility `grub-install' (*note
 
502
Invoking grub-install::) on a UNIX-like OS.
511
503
 
512
504
   GRUB comes with boot images, which are normally put in the directory
513
 
`/usr/lib/grub/i386-pc'. Hereafter, the directory where GRUB images are
514
 
initially placed (normally `/usr/lib/grub/i386-pc') will be called the
515
 
"image directory", and the directory where the boot loader needs to
516
 
find them (usually `/boot/grub') will be called the "boot directory".
 
505
`/usr/lib/grub/<cpu>-<platform>' (for BIOS-based machines
 
506
`/usr/lib/grub/i386-pc'). Hereafter, the directory where GRUB images are
 
507
initially placed (normally `/usr/lib/grub/<cpu>-<platform>') will be
 
508
called the "image directory", and the directory where the boot loader
 
509
needs to find them (usually `/boot') will be called the "boot
 
510
directory".
517
511
 
518
512
* Menu:
519
513
 
520
514
* Installing GRUB using grub-install::
521
515
* Making a GRUB bootable CD-ROM::
522
516
* Device map::
 
517
* BIOS installation::
523
518
 
524
519
 
525
520
File: grub.info,  Node: Installing GRUB using grub-install,  Next: Making a GRUB bootable CD-ROM,  Up: Installation
527
522
3.1 Installing GRUB using grub-install
528
523
======================================
529
524
 
530
 
*Caution:* This procedure is definitely less safe, because there are
531
 
several ways in which your computer can become unbootable. For example,
532
 
most operating systems don't tell GRUB how to map BIOS drives to OS
533
 
devices correctly--GRUB merely "guesses" the mapping. This will succeed
534
 
in most cases, but not always. Therefore, GRUB provides you with a map
535
 
file called the "device map", which you must fix if it is wrong. *Note
536
 
Device map::, for more details.
537
 
 
538
 
   On BIOS platforms GRUB has to use a so-called embedding zone. On
539
 
msdos partition tables, this is the space between the MBR and the first
540
 
partition (called the MBR gap or the boot track), while on GPT
541
 
partition tables it uses a BIOS Boot Partition (a partition with GUID
542
 
21686148-6449-6e6f-744e656564454649). If you use GRUB on a BIOS system,
543
 
make sure that the embedding zone is at least 31 KiB (512KiB or more
544
 
recommended).
545
 
 
546
 
   If you still do want to install GRUB under a UNIX-like OS (such as
547
 
GNU), invoke the program `grub-install' (*note Invoking grub-install::)
548
 
as the superuser ("root").
 
525
For information on where GRUB should be installed on PC BIOS platforms,
 
526
*note BIOS installation::.
 
527
 
 
528
   In order to install GRUB under a UNIX-like OS (such as GNU), invoke
 
529
the program `grub-install' (*note Invoking grub-install::) as the
 
530
superuser ("root").
549
531
 
550
532
   The usage is basically very simple. You only need to specify one
551
533
argument to the program, namely, where to install the boot loader. The
552
 
argument can be either a device file (like `/dev/hda') or a partition
553
 
specified in GRUB's notation. For example, under Linux the following
554
 
will install GRUB into the MBR of the first IDE disk:
 
534
argument has to be either a device file (like `/dev/hda').  For
 
535
example, under Linux the following will install GRUB into the MBR of
 
536
the first IDE disk:
555
537
 
556
538
     # grub-install /dev/hda
557
539
 
559
541
 
560
542
     # grub-install /dev/hd0
561
543
 
562
 
   But all the above examples assume that GRUB should use images under
563
 
the root directory. If you want GRUB to use images under a directory
564
 
other than the root directory, you need to specify the option
565
 
`--root-directory'. The typical usage is that you create a GRUB boot
566
 
floppy with a filesystem. Here is an example:
 
544
   But all the above examples assume that GRUB should put images under
 
545
the `/boot' directory. If you want GRUB to put images under a directory
 
546
other than `/boot', you need to specify the option `--boot-directory'.
 
547
The typical usage is that you create a GRUB boot floppy with a
 
548
filesystem. Here is an example:
567
549
 
568
550
     # mke2fs /dev/fd0
569
551
     # mount -t ext2 /dev/fd0 /mnt
570
 
     # grub-install --root-directory=/mnt fd0
 
552
     # mkdir /mnt/boot
 
553
     # grub-install --boot-directory=/mnt/boot /dev/fd0
571
554
     # umount /mnt
572
555
 
573
 
   Another example is when you have a separate boot partition which is
574
 
mounted at `/boot'. Since GRUB is a boot loader, it doesn't know
575
 
anything about mountpoints at all. Thus, you need to run `grub-install'
576
 
like this:
577
 
 
578
 
     # grub-install --root-directory=/boot /dev/hda
579
 
 
580
 
   By the way, as noted above, it is quite difficult to guess BIOS
581
 
drives correctly under a UNIX-like OS. Thus, `grub-install' will prompt
582
 
you to check if it could really guess the correct mappings, after the
583
 
installation. The format is defined in *note Device map::. Please be
584
 
quite careful. If the output is wrong, it is unlikely that your
585
 
computer will be able to boot with no problem.
586
 
 
587
556
   Some BIOSes have a bug of exposing the first partition of a USB
588
557
drive as a floppy instead of exposing the USB drive as a hard disk
589
558
(they call it "USB-FDD" boot). In such cases, you need to install like
614
583
can use the whole CD-ROM from GRUB and you don't have to make a floppy
615
584
or hard disk image file, which can cause compatibility problems.
616
585
 
617
 
   For booting from a CD-ROM, GRUB uses a special Stage 2 called
618
 
`stage2_eltorito'. The only GRUB files you need to have in your
619
 
bootable CD-ROM are this `stage2_eltorito' and optionally a config file
620
 
`grub.cfg'. You don't need to use `stage1' or `stage2', because El
621
 
Torito is quite different from the standard boot process.
622
 
 
623
 
   Here is an example of procedures to make a bootable CD-ROM image.
624
 
First, make a top directory for the bootable image, say, `iso':
 
586
   For booting from a CD-ROM, GRUB uses a special image called
 
587
`cdboot.img', which is concatenated with `core.img'. The `core.img'
 
588
used for this should be built with at least the `iso9660' and
 
589
`biosdisk' modules. Your bootable CD-ROM will usually also need to
 
590
include a configuration file `grub.cfg' and some other GRUB modules.
 
591
 
 
592
   To make a simple generic GRUB rescue CD, you can use the
 
593
`grub-mkrescue' program (*note Invoking grub-mkrescue::):
 
594
 
 
595
     $ grub-mkrescue -o grub.iso
 
596
 
 
597
   You will often need to include other files in your image. To do
 
598
this, first make a top directory for the bootable image, say, `iso':
625
599
 
626
600
     $ mkdir iso
627
601
 
629
603
 
630
604
     $ mkdir -p iso/boot/grub
631
605
 
632
 
   Copy the file `stage2_eltorito':
633
 
 
634
 
     $ cp /usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub
635
 
 
636
606
   If desired, make the config file `grub.cfg' under `iso/boot/grub'
637
607
(*note Configuration::), and copy any files and directories for the
638
608
disc to the directory `iso/'.
639
609
 
640
 
   Finally, make a ISO9660 image file like this:
 
610
   Finally, make the image:
641
611
 
642
 
     $ mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \
643
 
         -boot-load-size 4 -boot-info-table -o grub.iso iso
 
612
     $ grub-mkrescue -o grub.iso iso
644
613
 
645
614
   This produces a file named `grub.iso', which then can be burned into
646
 
a CD (or a DVD).  `mkisofs' has already set up the disc to boot from
647
 
the `boot/grub/stage2_eltorito' file, so there is no need to setup GRUB
648
 
on the disc.  (Note that the `-boot-load-size 4' bit is required for
649
 
compatibility with the BIOS on many older machines.)
 
615
a CD (or a DVD), or written to a USB mass storage device.
650
616
 
651
 
   You can use the device `(cd)' to access a CD-ROM in your config
652
 
file. This is not required; GRUB automatically sets the root device to
653
 
`(cd)' when booted from a CD-ROM. It is only necessary to refer to
654
 
`(cd)' if you want to access other drives as well.
 
617
   The root device will be set up appropriately on entering your
 
618
`grub.cfg' configuration file, so you can refer to file names on the CD
 
619
without needing to use an explicit device name. This makes it easier to
 
620
produce rescue images that will work on both optical drives and USB mass
 
621
storage devices.
655
622
 
656
623
 
657
624
File: grub.info,  Node: Making a GRUB bootable CD-ROM-Footnotes,  Up: Making a GRUB bootable CD-ROM
660
627
functions.
661
628
 
662
629
 
663
 
File: grub.info,  Node: Device map,  Prev: Making a GRUB bootable CD-ROM,  Up: Installation
 
630
File: grub.info,  Node: Device map,  Next: BIOS installation,  Prev: Making a GRUB bootable CD-ROM,  Up: Installation
664
631
 
665
632
3.3 The map between BIOS drives and OS devices
666
633
==============================================
705
672
line is just a comment if the first character is `#'.
706
673
 
707
674
 
 
675
File: grub.info,  Node: BIOS installation,  Prev: Device map,  Up: Installation
 
676
 
 
677
3.4 BIOS installation
 
678
=====================
 
679
 
 
680
MBR
 
681
===
 
682
 
 
683
The partition table format traditionally used on PC BIOS platforms is
 
684
called the Master Boot Record (MBR) format; this is the format that
 
685
allows up to four primary partitions and additional logical partitions.
 
686
With this partition table format, there are two ways to install GRUB:
 
687
it can be embedded in the area between the MBR and the first partition
 
688
(called by various names, such as the "boot track", "MBR gap", or
 
689
"embedding area", and which is usually at least 31 KiB), or the core
 
690
image can be installed in a file system and a list of the blocks that
 
691
make it up can be stored in the first sector of that partition.
 
692
 
 
693
   Each of these has different problems.  There is no way to reserve
 
694
space in the embedding area with complete safety, and some proprietary
 
695
software is known to use it to make it difficult for users to work
 
696
around licensing restrictions; and systems are sometimes partitioned
 
697
without leaving enough space before the first partition.  On the other
 
698
hand, installing to a filesystem means that GRUB is vulnerable to its
 
699
blocks being moved around by filesystem features such as tail packing,
 
700
or even by aggressive fsck implementations, so this approach is quite
 
701
fragile; and this approach can only be used if the `/boot' filesystem
 
702
is on the same disk that the BIOS boots from, so that GRUB does not
 
703
have to rely on guessing BIOS drive numbers.
 
704
 
 
705
   The GRUB development team generally recommends embedding GRUB before
 
706
the first partition, unless you have special requirements.  You must
 
707
ensure that the first partition starts at least 31 KiB (63 sectors)
 
708
from the start of the disk; on modern disks, it is often a performance
 
709
advantage to align partitions on larger boundaries anyway, so the first
 
710
partition might start 1 MiB from the start of the disk.
 
711
 
 
712
GPT
 
713
===
 
714
 
 
715
Some newer systems use the GUID Partition Table (GPT) format.  This was
 
716
specified as part of the Extensible Firmware Interface (EFI), but it can
 
717
also be used on BIOS platforms if system software supports it; for
 
718
example, GRUB and GNU/Linux can be used in this configuration.  With
 
719
this format, it is possible to reserve a whole partition for GRUB,
 
720
called the BIOS Boot Partition.  GRUB can then be embedded into that
 
721
partition without the risk of being overwritten by other software and
 
722
without being contained in a filesystem which might move its blocks
 
723
around.
 
724
 
 
725
   When creating a BIOS Boot Partition on a GPT system, you should make
 
726
sure that it is at least 31 KiB in size.  (GPT-formatted disks are not
 
727
usually particularly small, so we recommend that you make it larger
 
728
than the bare minimum, such as 1 MiB, to allow plenty of room for
 
729
growth.)  You must also make sure that it has the proper partition
 
730
type.  Using GNU Parted, you can set this using a command such as the
 
731
following:
 
732
 
 
733
     # parted /dev/DISK set PARTITION-NUMBER bios_grub on
 
734
 
 
735
   If you are using gdisk, set the partition type to `0xEF02'.  With
 
736
partitioning programs that require setting the GUID directly, it should
 
737
be `21686148-6449-6e6f-744e656564454649'.
 
738
 
 
739
   *Caution:* Be very careful which partition you select!  When GRUB
 
740
finds a BIOS Boot Partition during installation, it will automatically
 
741
overwrite part of it.  Make sure that the partition does not contain any
 
742
other data.
 
743
 
 
744
 
708
745
File: grub.info,  Node: Booting,  Next: Configuration,  Prev: Installation,  Up: Top
709
746
 
710
747
4 Booting
948
985
upgrading a distribution, and will discover available kernels and
949
986
attempt to generate menu entries for them.
950
987
 
 
988
   `grub-mkconfig' does have some limitations.  While adding extra
 
989
custom menu entries to the end of the list can be done by editing
 
990
`/etc/grub.d/40_custom' or creating `/boot/grub/custom.cfg', changing
 
991
the order of menu entries or changing their titles may require making
 
992
complex changes to shell scripts stored in `/etc/grub.d/'.  This may be
 
993
improved in the future.  In the meantime, those who feel that it would
 
994
be easier to write `grub.cfg' directly are encouraged to do so (*note
 
995
Booting::, and *note Shell-like scripting::), and to disable any system
 
996
provided by their distribution to automatically run `grub-mkconfig'.
 
997
 
951
998
   The file `/etc/default/grub' controls the operation of
952
999
`grub-mkconfig'.  It is sourced by a shell script, and so must be valid
953
1000
POSIX shell input; normally, it will just be a sequence of `KEY=value'
961
1008
`GRUB_DEFAULT'
962
1009
     The default menu entry.  This may be a number, in which case it
963
1010
     identifies the Nth entry in the generated menu counted from zero,
964
 
     or the full name of a menu entry, or the special string `saved'.
965
 
     Using the full name may be useful if you want to set a menu entry
966
 
     as the default even though there may be a variable number of
967
 
     entries before it.
 
1011
     or the title of a menu entry, or the special string `saved'.
 
1012
     Using the title may be useful if you want to set a menu entry as
 
1013
     the default even though there may be a variable number of entries
 
1014
     before it.
 
1015
 
 
1016
     For example, if you have:
 
1017
 
 
1018
     menuentry 'Example GNU/Linux distribution' --class gnu-linux {
 
1019
        ...
 
1020
     }
 
1021
 
 
1022
     then you can make this the default using:
 
1023
 
 
1024
          GRUB_DEFAULT='Example GNU/Linux distribution'
968
1025
 
969
1026
     If you set this to `saved', then the default menu entry will be
970
1027
     that saved by `GRUB_SAVEDEFAULT', `grub-set-default', or
978
1035
     This is only useful if `GRUB_DEFAULT=saved'; it is a separate
979
1036
     option because `GRUB_DEFAULT=saved' is useful without this option,
980
1037
     in conjunction with `grub-set-default' or `grub-reboot'.  Unset by
981
 
     default.  The remarks of *note Changes from GRUB Legacy:: on the
982
 
     availability of `save_env' apply.
 
1038
     default.  This option relies on the environment block, which may
 
1039
     not be available in all situations (*note Environment block::).
983
1040
 
984
1041
`GRUB_TIMEOUT'
985
1042
     Boot the default entry this many seconds after the menu is
1090
1147
     that you can only use modes which your graphics card supports via
1091
1148
     VESA BIOS Extensions (VBE), so for example native LCD panel
1092
1149
     resolutions may not be available.  The default is `640x480'.
 
1150
     *Note gfxmode::.
1093
1151
 
1094
1152
`GRUB_BACKGROUND'
1095
1153
     Set a background image for use with the `gfxterm' graphical
1105
1163
     mode, `keep' to preserve the graphics mode set using
1106
1164
     `GRUB_GFXMODE', `WIDTHxHEIGHT'[`xDEPTH'] to set a particular
1107
1165
     graphics mode, or a sequence of these separated by commas or
1108
 
     semicolons to try several modes in sequence.
 
1166
     semicolons to try several modes in sequence.  *Note gfxpayload::.
1109
1167
 
1110
1168
     Depending on your kernel, your distribution, your graphics card,
1111
1169
     and the phase of the moon, note that using this option may cause
1129
1187
     If this option is set, GRUB will issue a *note badram:: command to
1130
1188
     filter out specified regions of RAM.
1131
1189
 
 
1190
`GRUB_PRELOAD_MODULES'
 
1191
     This option may be set to a list of GRUB module names separated by
 
1192
     spaces.  Each module will be loaded as early as possible, at the
 
1193
     start of `grub.cfg'.
 
1194
 
1132
1195
 
1133
1196
   For more detailed customisation of `grub-mkconfig''s output, you may
1134
1197
edit the scripts in `/etc/grub.d' directly.  `/etc/grub.d/40_custom' is
1209
1272
following it which could be interpreted as part of the name.
1210
1273
 
1211
1274
   Normal variable names begin with an alphabetic character, followed
1212
 
by zero or more alphanumeric characters.
 
1275
by zero or more alphanumeric characters.  These names refer to entries
 
1276
in the GRUB environment (*note Environment::).
1213
1277
 
1214
1278
   Positional variable names consist of one or more digits.  They
1215
1279
represent parameters passed to function calls, with `$1' representing
1350
1414
`grub-mkimage'.
1351
1415
 
1352
1416
   After the embedded configuration file (if any) is executed, GRUB
1353
 
will load the `normal' module, which will then read the real
1354
 
configuration file from `$prefix/grub.cfg'.  By this point, the `root'
1355
 
variable will also have been set to the root device name.  For example,
1356
 
`prefix' might be set to `(hd0,1)/boot/grub', and `root' might be set to
1357
 
`hd0,1'.  Thus, in most cases, the embedded configuration file only
1358
 
needs to set the `prefix' and `root' variables, and then drop through
1359
 
to GRUB's normal processing.  A typical example of this might look like
1360
 
this:
 
1417
will load the `normal' module (*note normal::), which will then read
 
1418
the real configuration file from `$prefix/grub.cfg'.  By this point, the
 
1419
`root' variable will also have been set to the root device name.  For
 
1420
example, `prefix' might be set to `(hd0,1)/boot/grub', and `root' might
 
1421
be set to `hd0,1'.  Thus, in most cases, the embedded configuration
 
1422
file only needs to set the `prefix' and `root' variables, and then drop
 
1423
through to GRUB's normal processing.  A typical example of this might
 
1424
look like this:
1361
1425
 
1362
1426
     search.fs_uuid 01234567-89ab-cdef-0123-456789abcdef root
1363
1427
     set prefix=($root)/boot/grub
1944
2008
`terminal_output' (*note terminal_output::) choose which type of
1945
2009
terminal you want to use. In the case above, the terminal will be a
1946
2010
serial terminal, but you can also pass `console' to the command, as
1947
 
`terminal serial console'. In this case, a terminal in which you press
1948
 
any key will be selected as a GRUB terminal. In the example above, note
1949
 
that you need to put both commands on the same command line, as you
 
2011
`terminal_input serial console'. In this case, a terminal in which you
 
2012
press any key will be selected as a GRUB terminal. In the example above,
 
2013
note that you need to put both commands on the same command line, as you
1950
2014
will lose the ability to type commands on the console after the first
1951
2015
command.
1952
2016
 
1983
2047
   To take full advantage of this function, install GRUB into the MBR
1984
2048
(*note Installing GRUB using grub-install::).
1985
2049
 
 
2050
   If you have a laptop which has a similar feature and not in the
 
2051
above list could you figure your address and contribute?  To discover
 
2052
the address do the following:
 
2053
   * boot normally
 
2054
 
 
2055
   *      sudo modprobe nvram
 
2056
          sudo cat /dev/nvram | xxd > normal_button.txt
 
2057
 
 
2058
   * boot using vendor button
 
2059
 
 
2060
   *      sudo modprobe nvram
 
2061
          sudo cat /dev/nvram | xxd > normal_vendor.txt
 
2062
 
 
2063
   Then compare these text files and find where a bit was toggled. E.g.
 
2064
in case of Dell XPS it was:
 
2065
     byte 0x47: 20 --> 28
 
2066
   It's a bit number 3 as seen from following table:
 
2067
0              01
 
2068
1              02
 
2069
2              04
 
2070
3              08
 
2071
4              10
 
2072
5              20
 
2073
6              40
 
2074
7              80
 
2075
 
 
2076
   0x47 is decimal 71. Linux nvram implementation cuts first 14 bytes of
 
2077
CMOS. So the real byte address in CMOS is 71+14=85 So complete address
 
2078
is 85:3
 
2079
 
1986
2080
 
1987
2081
File: grub.info,  Node: Images,  Next: Filesystem,  Prev: Vendor power-on keys,  Up: Top
1988
2082
 
2043
2137
     to be kept small, since the areas of disk where it must be
2044
2138
     installed are often as small as 32KB.
2045
2139
 
2046
 
     On PC systems using the traditional MBR partition table format,
2047
 
     the core image is usually installed in the "MBR gap" between the
2048
 
     master boot record and the first partition, or sometimes it is
2049
 
     installed in a file system and read directly from that.  The
2050
 
     latter is not recommended because GRUB needs to encode the
2051
 
     location of all the core image sectors in `diskboot.img', and if
2052
 
     the file system ever moves the core image around (as it is entitled
2053
 
     to do) then GRUB must be reinstalled; it also means that GRUB will
2054
 
     not be able to reliably find the core image if it resides on a
2055
 
     different disk than the one to which `boot.img' was installed.
2056
 
 
2057
 
     On PC systems using the more recent GUID Partition Table (GPT)
2058
 
     format, the core image should be installed to a BIOS Boot
2059
 
     Partition.  This may be created by GNU Parted using a command such
2060
 
     as the following:
2061
 
 
2062
 
          # parted /dev/DISK set PARTITION-NUMBER bios_grub on
2063
 
 
2064
 
     *Caution:* Be very careful which partition you select!  When GRUB
2065
 
     finds a BIOS Boot Partition during installation, it will
2066
 
     automatically overwrite part of it.  Make sure that the partition
2067
 
     does not contain any other data.
 
2140
     *Note BIOS installation::, for details on where the core image can
 
2141
     be installed on PC systems.
2068
2142
 
2069
2143
`*.mod'
2070
2144
     Everything else in GRUB resides in dynamically loadable modules.
2220
2294
`(hd0,2)+1' is the same as `+1' when the root device is `(hd0,2)'.
2221
2295
 
2222
2296
 
2223
 
File: grub.info,  Node: Interface,  Next: Commands,  Prev: Filesystem,  Up: Top
 
2297
File: grub.info,  Node: Interface,  Next: Environment,  Prev: Filesystem,  Up: Top
2224
2298
 
2225
2299
12 GRUB's user interface
2226
2300
************************
2361
2435
almost the same thing by just returning to the main menu using <ESC>.
2362
2436
 
2363
2437
 
2364
 
File: grub.info,  Node: Commands,  Next: Security,  Prev: Interface,  Up: Top
2365
 
 
2366
 
13 The list of available commands
 
2438
File: grub.info,  Node: Environment,  Next: Commands,  Prev: Interface,  Up: Top
 
2439
 
 
2440
13 GRUB environment variables
 
2441
*****************************
 
2442
 
 
2443
GRUB supports environment variables which are rather like those offered
 
2444
by all Unix-like systems.  Environment variables have a name, which is
 
2445
unique and is usually a short identifier, and a value, which is an
 
2446
arbitrary string of characters.  They may be set (*note set::), unset
 
2447
(*note unset::), or looked up (*note Shell-like scripting::) by name.
 
2448
 
 
2449
   A number of environment variables have special meanings to various
 
2450
parts of GRUB.  Others may be used freely in GRUB configuration files.
 
2451
 
 
2452
* Menu:
 
2453
 
 
2454
* Special environment variables::
 
2455
* Environment block::
 
2456
 
 
2457
 
 
2458
File: grub.info,  Node: Special environment variables,  Next: Environment block,  Up: Environment
 
2459
 
 
2460
13.1 Special environment variables
 
2461
==================================
 
2462
 
 
2463
These variables have special meaning to GRUB.
 
2464
 
 
2465
* Menu:
 
2466
 
 
2467
* biosnum::
 
2468
* chosen::
 
2469
* color_highlight::
 
2470
* color_normal::
 
2471
* debug::
 
2472
* default::
 
2473
* fallback::
 
2474
* gfxmode::
 
2475
* gfxpayload::
 
2476
* gfxterm_font::
 
2477
* icondir::
 
2478
* lang::
 
2479
* locale_dir::
 
2480
* menu_color_highlight::
 
2481
* menu_color_normal::
 
2482
* net_pxe_boot_file::
 
2483
* net_pxe_dhcp_server_name::
 
2484
* net_pxe_domain::
 
2485
* net_pxe_extensionspath::
 
2486
* net_pxe_hostname::
 
2487
* net_pxe_ip::
 
2488
* net_pxe_mac::
 
2489
* net_pxe_rootpath::
 
2490
* pager::
 
2491
* prefix::
 
2492
* pxe_blksize::
 
2493
* pxe_default_gateway::
 
2494
* pxe_default_server::
 
2495
* root::
 
2496
* superusers::
 
2497
* theme::
 
2498
* timeout::
 
2499
 
 
2500
 
 
2501
File: grub.info,  Node: biosnum,  Next: chosen,  Up: Special environment variables
 
2502
 
 
2503
13.1.1 biosnum
 
2504
--------------
 
2505
 
 
2506
When chain-loading another boot loader (*note Chain-loading::), GRUB may
 
2507
need to know what BIOS drive number corresponds to the root device
 
2508
(*note root::) so that it can set up registers properly.  If the
 
2509
BIOSNUM variable is set, it overrides GRUB's own means of guessing this.
 
2510
 
 
2511
   For an alternative approach which also changes BIOS drive mappings
 
2512
for the chain-loaded system, *note drivemap::.
 
2513
 
 
2514
 
 
2515
File: grub.info,  Node: chosen,  Next: color_highlight,  Prev: biosnum,  Up: Special environment variables
 
2516
 
 
2517
13.1.2 chosen
 
2518
-------------
 
2519
 
 
2520
When executing a menu entry, GRUB sets the CHOSEN variable to the title
 
2521
of the entry being executed.
 
2522
 
 
2523
   If the menu entry is in one or more submenus, then CHOSEN is set to
 
2524
the titles of each of the submenus starting from the top level followed
 
2525
by the title of the menu entry itself, separated by `>'.
 
2526
 
 
2527
 
 
2528
File: grub.info,  Node: color_highlight,  Next: color_normal,  Prev: chosen,  Up: Special environment variables
 
2529
 
 
2530
13.1.3 color_highlight
 
2531
----------------------
 
2532
 
 
2533
This variable contains the "highlight" foreground and background
 
2534
terminal colors, separated by a slash (`/').  Setting this variable
 
2535
changes those colors.  For the available color names, *note
 
2536
color_normal::.
 
2537
 
 
2538
   The default is `black/white'.
 
2539
 
 
2540
 
 
2541
File: grub.info,  Node: color_normal,  Next: debug,  Prev: color_highlight,  Up: Special environment variables
 
2542
 
 
2543
13.1.4 color_normal
 
2544
-------------------
 
2545
 
 
2546
This variable contains the "normal" foreground and background terminal
 
2547
colors, separated by a slash (`/').  Setting this variable changes
 
2548
those colors.  Each color must be a name from the following list:
 
2549
 
 
2550
   * black
 
2551
 
 
2552
   * blue
 
2553
 
 
2554
   * green
 
2555
 
 
2556
   * cyan
 
2557
 
 
2558
   * red
 
2559
 
 
2560
   * magenta
 
2561
 
 
2562
   * brown
 
2563
 
 
2564
   * light-gray
 
2565
 
 
2566
   * dark-gray
 
2567
 
 
2568
   * light-blue
 
2569
 
 
2570
   * light-green
 
2571
 
 
2572
   * light-cyan
 
2573
 
 
2574
   * light-red
 
2575
 
 
2576
   * light-magenta
 
2577
 
 
2578
   * yellow
 
2579
 
 
2580
   * white
 
2581
 
 
2582
   The default is `white/black'.
 
2583
 
 
2584
 
 
2585
File: grub.info,  Node: debug,  Next: default,  Prev: color_normal,  Up: Special environment variables
 
2586
 
 
2587
13.1.5 debug
 
2588
------------
 
2589
 
 
2590
This variable may be set to enable debugging output from various
 
2591
components of GRUB.  The value is a list of debug facility names
 
2592
separated by whitespace or `,', or `all' to enable all available
 
2593
debugging output.
 
2594
 
 
2595
 
 
2596
File: grub.info,  Node: default,  Next: fallback,  Prev: debug,  Up: Special environment variables
 
2597
 
 
2598
13.1.6 default
 
2599
--------------
 
2600
 
 
2601
If this variable is set, it identifies a menu entry that should be
 
2602
selected by default, possibly after a timeout (*note timeout::).  The
 
2603
entry may be identified by number or by title.
 
2604
 
 
2605
   If the entry is in a submenu, then it must be identified using the
 
2606
titles of each of the submenus starting from the top level followed by
 
2607
the number or title of the menu entry itself, separated by `>'.  For
 
2608
example, take the following menu structure:
 
2609
 
 
2610
     Submenu 1
 
2611
       Menu Entry 1
 
2612
       Menu Entry 2
 
2613
     Submenu 2
 
2614
       Submenu 3
 
2615
         Menu Entry 3
 
2616
         Menu Entry 4
 
2617
       Menu Entry 5
 
2618
 
 
2619
   "Menu Entry 3" would then be identified as `Submenu 2>Submenu 3>Menu
 
2620
Entry 3'.
 
2621
 
 
2622
   This variable is often set by `GRUB_DEFAULT' (*note Simple
 
2623
configuration::), `grub-set-default', or `grub-reboot'.
 
2624
 
 
2625
 
 
2626
File: grub.info,  Node: fallback,  Next: gfxmode,  Prev: default,  Up: Special environment variables
 
2627
 
 
2628
13.1.7 fallback
 
2629
---------------
 
2630
 
 
2631
If this variable is set, it identifies a menu entry that should be
 
2632
selected if the default menu entry fails to boot.  Entries are
 
2633
identified in the same way as for `default' (*note default::).
 
2634
 
 
2635
 
 
2636
File: grub.info,  Node: gfxmode,  Next: gfxpayload,  Prev: fallback,  Up: Special environment variables
 
2637
 
 
2638
13.1.8 gfxmode
 
2639
--------------
 
2640
 
 
2641
If this variable is set, it sets the resolution used on the `gfxterm'
 
2642
graphical terminal.  Note that you can only use modes which your
 
2643
graphics card supports via VESA BIOS Extensions (VBE), so for example
 
2644
native LCD panel resolutions may not be available.  The default is
 
2645
`auto', which selects a platform-specific default that should look
 
2646
reasonable.
 
2647
 
 
2648
   The resolution may be specified as a sequence of one or more modes,
 
2649
separated by commas (`,') or semicolons (`;'); each will be tried in
 
2650
turn until one is found.  Each mode should be either `auto',
 
2651
`WIDTHxHEIGHT', or `WIDTHxHEIGHTxDEPTH'.
 
2652
 
 
2653
 
 
2654
File: grub.info,  Node: gfxpayload,  Next: gfxterm_font,  Prev: gfxmode,  Up: Special environment variables
 
2655
 
 
2656
13.1.9 gfxpayload
 
2657
-----------------
 
2658
 
 
2659
If this variable is set, it controls the video mode in which the Linux
 
2660
kernel starts up, replacing the `vga=' boot option (*note linux::).  It
 
2661
may be set to `text' to force the Linux kernel to boot in normal text
 
2662
mode, `keep' to preserve the graphics mode set using `gfxmode', or any
 
2663
of the permitted values for `gfxmode' to set a particular graphics mode
 
2664
(*note gfxmode::).
 
2665
 
 
2666
   Depending on your kernel, your distribution, your graphics card, and
 
2667
the phase of the moon, note that using this option may cause GNU/Linux
 
2668
to suffer from various display problems, particularly during the early
 
2669
part of the boot sequence.  If you have problems, set this variable to
 
2670
`text' and GRUB will tell Linux to boot in normal text mode.
 
2671
 
 
2672
   The default is platform-specific.  On platforms with a native text
 
2673
mode (such as PC BIOS platforms), the default is `text'.  Otherwise the
 
2674
default may be `auto' or a specific video mode.
 
2675
 
 
2676
   This variable is often set by `GRUB_GFXPAYLOAD_LINUX' (*note Simple
 
2677
configuration::).
 
2678
 
 
2679
 
 
2680
File: grub.info,  Node: gfxterm_font,  Next: icondir,  Prev: gfxpayload,  Up: Special environment variables
 
2681
 
 
2682
13.1.10 gfxterm_font
 
2683
--------------------
 
2684
 
 
2685
If this variable is set, it names a font to use for text on the
 
2686
`gfxterm' graphical terminal.  Otherwise, `gfxterm' may use any
 
2687
available font.
 
2688
 
 
2689
 
 
2690
File: grub.info,  Node: icondir,  Next: lang,  Prev: gfxterm_font,  Up: Special environment variables
 
2691
 
 
2692
13.1.11 icondir
 
2693
---------------
 
2694
 
 
2695
If this variable is set, it names a directory in which the GRUB
 
2696
graphical menu should look for icons after looking in the theme's
 
2697
`icons' directory.  *Note Theme file format::.
 
2698
 
 
2699
 
 
2700
File: grub.info,  Node: lang,  Next: locale_dir,  Prev: icondir,  Up: Special environment variables
 
2701
 
 
2702
13.1.12 lang
 
2703
------------
 
2704
 
 
2705
If this variable is set, it names the language code that the `gettext'
 
2706
command (*note gettext::) uses to translate strings.  For example,
 
2707
French would be named as `fr', and Simplified Chinese as `zh_CN'.
 
2708
 
 
2709
   `grub-mkconfig' (*note Simple configuration::) will try to set a
 
2710
reasonable default for this variable based on the system locale.
 
2711
 
 
2712
 
 
2713
File: grub.info,  Node: locale_dir,  Next: menu_color_highlight,  Prev: lang,  Up: Special environment variables
 
2714
 
 
2715
13.1.13 locale_dir
 
2716
------------------
 
2717
 
 
2718
If this variable is set, it names the directory where translation files
 
2719
may be found (*note gettext::), usually `/boot/grub/locale'.  Otherwise,
 
2720
internationalization is disabled.
 
2721
 
 
2722
   `grub-mkconfig' (*note Simple configuration::) will set a reasonable
 
2723
default for this variable if internationalization is needed and any
 
2724
translation files are available.
 
2725
 
 
2726
 
 
2727
File: grub.info,  Node: menu_color_highlight,  Next: menu_color_normal,  Prev: locale_dir,  Up: Special environment variables
 
2728
 
 
2729
13.1.14 menu_color_highlight
 
2730
----------------------------
 
2731
 
 
2732
This variable contains the foreground and background colors to be used
 
2733
for the highlighted menu entry, separated by a slash (`/').  Setting
 
2734
this variable changes those colors.  For the available color names,
 
2735
*note color_normal::.
 
2736
 
 
2737
   The default is the value of `color_highlight' (*note
 
2738
color_highlight::).
 
2739
 
 
2740
 
 
2741
File: grub.info,  Node: menu_color_normal,  Next: net_pxe_boot_file,  Prev: menu_color_highlight,  Up: Special environment variables
 
2742
 
 
2743
13.1.15 menu_color_normal
 
2744
-------------------------
 
2745
 
 
2746
This variable contains the foreground and background colors to be used
 
2747
for non-highlighted menu entries, separated by a slash (`/').  Setting
 
2748
this variable changes those colors.  For the available color names,
 
2749
*note color_normal::.
 
2750
 
 
2751
   The default is the value of `color_normal' (*note color_normal::).
 
2752
 
 
2753
 
 
2754
File: grub.info,  Node: net_pxe_boot_file,  Next: net_pxe_dhcp_server_name,  Prev: menu_color_normal,  Up: Special environment variables
 
2755
 
 
2756
13.1.16 net_pxe_boot_file
 
2757
-------------------------
 
2758
 
 
2759
*Note Network::.
 
2760
 
 
2761
 
 
2762
File: grub.info,  Node: net_pxe_dhcp_server_name,  Next: net_pxe_domain,  Prev: net_pxe_boot_file,  Up: Special environment variables
 
2763
 
 
2764
13.1.17 net_pxe_dhcp_server_name
 
2765
--------------------------------
 
2766
 
 
2767
*Note Network::.
 
2768
 
 
2769
 
 
2770
File: grub.info,  Node: net_pxe_domain,  Next: net_pxe_extensionspath,  Prev: net_pxe_dhcp_server_name,  Up: Special environment variables
 
2771
 
 
2772
13.1.18 net_pxe_domain
 
2773
----------------------
 
2774
 
 
2775
*Note Network::.
 
2776
 
 
2777
 
 
2778
File: grub.info,  Node: net_pxe_extensionspath,  Next: net_pxe_hostname,  Prev: net_pxe_domain,  Up: Special environment variables
 
2779
 
 
2780
13.1.19 net_pxe_extensionspath
 
2781
------------------------------
 
2782
 
 
2783
*Note Network::.
 
2784
 
 
2785
 
 
2786
File: grub.info,  Node: net_pxe_hostname,  Next: net_pxe_ip,  Prev: net_pxe_extensionspath,  Up: Special environment variables
 
2787
 
 
2788
13.1.20 net_pxe_hostname
 
2789
------------------------
 
2790
 
 
2791
*Note Network::.
 
2792
 
 
2793
 
 
2794
File: grub.info,  Node: net_pxe_ip,  Next: net_pxe_mac,  Prev: net_pxe_hostname,  Up: Special environment variables
 
2795
 
 
2796
13.1.21 net_pxe_ip
 
2797
------------------
 
2798
 
 
2799
*Note Network::.
 
2800
 
 
2801
 
 
2802
File: grub.info,  Node: net_pxe_mac,  Next: net_pxe_rootpath,  Prev: net_pxe_ip,  Up: Special environment variables
 
2803
 
 
2804
13.1.22 net_pxe_mac
 
2805
-------------------
 
2806
 
 
2807
*Note Network::.
 
2808
 
 
2809
 
 
2810
File: grub.info,  Node: net_pxe_rootpath,  Next: pager,  Prev: net_pxe_mac,  Up: Special environment variables
 
2811
 
 
2812
13.1.23 net_pxe_rootpath
 
2813
------------------------
 
2814
 
 
2815
*Note Network::.
 
2816
 
 
2817
 
 
2818
File: grub.info,  Node: pager,  Next: prefix,  Prev: net_pxe_rootpath,  Up: Special environment variables
 
2819
 
 
2820
13.1.24 pager
 
2821
-------------
 
2822
 
 
2823
If set to `1', pause output after each screenful and wait for keyboard
 
2824
input.  The default is not to pause output.
 
2825
 
 
2826
 
 
2827
File: grub.info,  Node: prefix,  Next: pxe_blksize,  Prev: pager,  Up: Special environment variables
 
2828
 
 
2829
13.1.25 prefix
 
2830
--------------
 
2831
 
 
2832
The location of the `/boot/grub' directory as an absolute file name
 
2833
(*note File name syntax::).  This is normally set by GRUB at startup
 
2834
based on information provided by `grub-install'.  GRUB modules are
 
2835
dynamically loaded from this directory, so it must be set correctly in
 
2836
order for many parts of GRUB to work.
 
2837
 
 
2838
 
 
2839
File: grub.info,  Node: pxe_blksize,  Next: pxe_default_gateway,  Prev: prefix,  Up: Special environment variables
 
2840
 
 
2841
13.1.26 pxe_blksize
 
2842
-------------------
 
2843
 
 
2844
*Note Network::.
 
2845
 
 
2846
 
 
2847
File: grub.info,  Node: pxe_default_gateway,  Next: pxe_default_server,  Prev: pxe_blksize,  Up: Special environment variables
 
2848
 
 
2849
13.1.27 pxe_default_gateway
 
2850
---------------------------
 
2851
 
 
2852
*Note Network::.
 
2853
 
 
2854
 
 
2855
File: grub.info,  Node: pxe_default_server,  Next: root,  Prev: pxe_default_gateway,  Up: Special environment variables
 
2856
 
 
2857
13.1.28 pxe_default_server
 
2858
--------------------------
 
2859
 
 
2860
*Note Network::.
 
2861
 
 
2862
 
 
2863
File: grub.info,  Node: root,  Next: superusers,  Prev: pxe_default_server,  Up: Special environment variables
 
2864
 
 
2865
13.1.29 root
 
2866
------------
 
2867
 
 
2868
The root device name (*note Device syntax::).  Any file names that do
 
2869
not specify an explicit device name are read from this device.  The
 
2870
default is normally set by GRUB at startup based on the value of
 
2871
`prefix' (*note prefix::).
 
2872
 
 
2873
   For example, if GRUB was installed to the first partition of the
 
2874
first hard disk, then `prefix' might be set to `(hd0,msdos1)/boot/grub'
 
2875
and `root' to `hd0,msdos1'.
 
2876
 
 
2877
 
 
2878
File: grub.info,  Node: superusers,  Next: theme,  Prev: root,  Up: Special environment variables
 
2879
 
 
2880
13.1.30 superusers
 
2881
------------------
 
2882
 
 
2883
This variable may be set to a list of superuser names to enable
 
2884
authentication support.  *Note Security::.
 
2885
 
 
2886
 
 
2887
File: grub.info,  Node: theme,  Next: timeout,  Prev: superusers,  Up: Special environment variables
 
2888
 
 
2889
13.1.31 theme
 
2890
-------------
 
2891
 
 
2892
This variable may be set to a directory containing a GRUB graphical menu
 
2893
theme.  *Note Theme file format::.
 
2894
 
 
2895
   This variable is often set by `GRUB_THEME' (*note Simple
 
2896
configuration::).
 
2897
 
 
2898
 
 
2899
File: grub.info,  Node: timeout,  Prev: theme,  Up: Special environment variables
 
2900
 
 
2901
13.1.32 timeout
 
2902
---------------
 
2903
 
 
2904
If this variable is set, it specifies the time in seconds to wait for
 
2905
keyboard input before booting the default menu entry.  A timeout of `0'
 
2906
means to boot the default entry immediately without displaying the
 
2907
menu; a timeout of `-1' (or unset) means to wait indefinitely.
 
2908
 
 
2909
   This variable is often set by `GRUB_TIMEOUT' or
 
2910
`GRUB_HIDDEN_TIMEOUT' (*note Simple configuration::).
 
2911
 
 
2912
 
 
2913
File: grub.info,  Node: Environment block,  Prev: Special environment variables,  Up: Environment
 
2914
 
 
2915
13.2 The GRUB environment block
 
2916
===============================
 
2917
 
 
2918
It is often useful to be able to remember a small amount of information
 
2919
from one boot to the next.  For example, you might want to set the
 
2920
default menu entry based on what was selected the last time.  GRUB
 
2921
deliberately does not implement support for writing files in order to
 
2922
minimise the possibility of the boot loader being responsible for file
 
2923
system corruption, so a GRUB configuration file cannot just create a
 
2924
file in the ordinary way.  However, GRUB provides an "environment
 
2925
block" which can be used to save a small amount of state.
 
2926
 
 
2927
   The environment block is a preallocated 1024-byte file, which
 
2928
normally lives in `/boot/grub/grubenv' (although you should not assume
 
2929
this).  At boot time, the `load_env' command (*note load_env::) loads
 
2930
environment variables from it, and the `save_env' (*note save_env::)
 
2931
command saves environment variables to it.  From a running system, the
 
2932
`grub-editenv' utility can be used to edit the environment block.
 
2933
 
 
2934
   For safety reasons, this storage is only available when installed on
 
2935
a plain disk (no LVM or RAID), using a non-checksumming filesystem (no
 
2936
ZFS), and using BIOS or EFI functions (no ATA, USB or IEEE1275).
 
2937
 
 
2938
   `grub-mkconfig' uses this facility to implement `GRUB_SAVEDEFAULT'
 
2939
(*note Simple configuration::).
 
2940
 
 
2941
 
 
2942
File: grub.info,  Node: Commands,  Next: Security,  Prev: Environment,  Up: Top
 
2943
 
 
2944
14 The list of available commands
2367
2945
*********************************
2368
2946
 
2369
2947
In this chapter, we list all commands that are available in GRUB.
2375
2953
 
2376
2954
   In rescue mode, only the `insmod' (*note insmod::), `ls' (*note
2377
2955
ls::), `set' (*note set::), and `unset' (*note unset::) commands are
2378
 
normally available.
 
2956
normally available.  If you end up in rescue mode and do not know what
 
2957
to do, then *note GRUB only offers a rescue shell::.
2379
2958
 
2380
2959
* Menu:
2381
2960
 
2386
2965
 
2387
2966
File: grub.info,  Node: Menu-specific commands,  Next: General commands,  Up: Commands
2388
2967
 
2389
 
13.1 The list of commands for the menu only
 
2968
14.1 The list of commands for the menu only
2390
2969
===========================================
2391
2970
 
2392
2971
The semantics used in parsing the configuration file are the following:
2393
2972
 
2394
 
   * The menu-specific commands have to be used before any others.
2395
 
 
2396
2973
   * The files _must_ be in plain-text format.
2397
2974
 
2398
2975
   * `#' at the beginning of a line in a configuration file means it is
2403
2980
   * All numbers can be either decimal or hexadecimal. A hexadecimal
2404
2981
     number must be preceded by `0x', and is case-insensitive.
2405
2982
 
2406
 
   * Extra options or text at the end of the line are ignored unless
2407
 
     otherwise specified.
2408
 
 
2409
 
   * Unrecognized commands are added to the current entry, except
2410
 
     before entries start, where they are ignored.
2411
 
 
2412
2983
   These commands can only be used in the menu:
2413
2984
 
2414
2985
* Menu:
2415
2986
 
2416
2987
* menuentry::                   Start a menu entry
 
2988
* submenu::                     Group menu entries
2417
2989
 
2418
2990
 
2419
 
File: grub.info,  Node: menuentry,  Up: Menu-specific commands
 
2991
File: grub.info,  Node: menuentry,  Next: submenu,  Up: Menu-specific commands
2420
2992
 
2421
 
13.1.1 menuentry
 
2993
14.1.1 menuentry
2422
2994
----------------
2423
2995
 
2424
2996
 -- Command: menuentry TITLE [`--class=class' ...] [`--users=users']
2441
3013
     or `delete'.
2442
3014
 
2443
3015
 
 
3016
File: grub.info,  Node: submenu,  Prev: menuentry,  Up: Menu-specific commands
 
3017
 
 
3018
14.1.2 submenu
 
3019
--------------
 
3020
 
 
3021
 -- Command: submenu TITLE [`--class=class' ...] [`--users=users']
 
3022
          [`--hotkey=key'] { MENU ENTRIES ... }
 
3023
     This defines a submenu.  An entry called TITLE will be added to the
 
3024
     menu; when that entry is selected, a new menu will be displayed
 
3025
     showing all the entries within this submenu.
 
3026
 
 
3027
     All options are the same as in the `menuentry' command (*note
 
3028
     menuentry::).
 
3029
 
 
3030
 
2444
3031
File: grub.info,  Node: General commands,  Next: Command-line and menu entry commands,  Prev: Menu-specific commands,  Up: Commands
2445
3032
 
2446
 
13.2 The list of general commands
 
3033
14.2 The list of general commands
2447
3034
=================================
2448
3035
 
2449
3036
Commands usable anywhere in the menu and in the command-line.
2458
3045
 
2459
3046
File: grub.info,  Node: serial,  Next: terminal_input,  Up: General commands
2460
3047
 
2461
 
13.2.1 serial
 
3048
14.2.1 serial
2462
3049
-------------
2463
3050
 
2464
3051
 -- Command: serial [`--unit=unit'] [`--port=port'] [`--speed=speed']
2482
3069
 
2483
3070
File: grub.info,  Node: terminal_input,  Next: terminal_output,  Prev: serial,  Up: General commands
2484
3071
 
2485
 
13.2.2 terminal_input
 
3072
14.2.2 terminal_input
2486
3073
---------------------
2487
3074
 
2488
3075
 -- Command: terminal_input [`--append'|`--remove'] [terminal1]
2502
3089
 
2503
3090
File: grub.info,  Node: terminal_output,  Next: terminfo,  Prev: terminal_input,  Up: General commands
2504
3091
 
2505
 
13.2.3 terminal_output
 
3092
14.2.3 terminal_output
2506
3093
----------------------
2507
3094
 
2508
3095
 -- Command: terminal_output [`--append'|`--remove'] [terminal1]
2522
3109
 
2523
3110
File: grub.info,  Node: terminfo,  Prev: terminal_output,  Up: General commands
2524
3111
 
2525
 
13.2.4 terminfo
 
3112
14.2.4 terminfo
2526
3113
---------------
2527
3114
 
2528
3115
 -- Command: terminfo [-a|-u|-v] [term]
2549
3136
 
2550
3137
File: grub.info,  Node: Command-line and menu entry commands,  Prev: General commands,  Up: Commands
2551
3138
 
2552
 
13.3 The list of command-line and menu entry commands
 
3139
14.3 The list of command-line and menu entry commands
2553
3140
=====================================================
2554
3141
 
2555
3142
These commands are usable in the command-line and in menu entries.  If
2571
3158
* drivemap::                    Map a drive to another
2572
3159
* echo::                        Display a line of text
2573
3160
* export::                      Export an environment variable
 
3161
* false::                       Do nothing, unsuccessfully
2574
3162
* gettext::                     Translate a string
2575
3163
* gptsync::                     Fill an MBR based on GPT entries
2576
3164
* halt::                        Shut down your computer
2581
3169
* keystatus::                   Check key modifier status
2582
3170
* linux::                       Load a Linux kernel
2583
3171
* linux16::                     Load a Linux kernel (16-bit mode)
 
3172
* list_env::                    List variables in environment block
 
3173
* load_env::                    Load variables from environment block
 
3174
* loopback::                    Make a device from a filesystem image
2584
3175
* ls::                          List devices or files
 
3176
* normal::                      Enter normal mode
 
3177
* normal_exit::                 Exit from normal mode
2585
3178
* parttool::                    Modify partition table entries
2586
3179
* password::                    Set a clear-text password
2587
3180
* password_pbkdf2::             Set a hashed password
2588
3181
* play::                        Play a tune
2589
3182
* pxe_unload::                  Unload the PXE environment
 
3183
* read::                        Read user input
2590
3184
* reboot::                      Reboot your computer
 
3185
* save_env::                    Save variables to environment block
2591
3186
* search::                      Search devices by file, label, or UUID
2592
3187
* sendkey::                     Emulate keystrokes
2593
3188
* set::                         Set an environment variable
 
3189
* true::                        Do nothing, successfully
2594
3190
* unset::                       Unset an environment variable
2595
3191
* uppermem::                    Set the upper memory size
2596
3192
 
2597
3193
 
2598
3194
File: grub.info,  Node: acpi,  Next: badram,  Up: Command-line and menu entry commands
2599
3195
 
2600
 
13.3.1 acpi
 
3196
14.3.1 acpi
2601
3197
-----------
2602
3198
 
2603
3199
 -- Command: acpi [`-1'|`-2']
2620
3216
 
2621
3217
File: grub.info,  Node: badram,  Next: blocklist,  Prev: acpi,  Up: Command-line and menu entry commands
2622
3218
 
2623
 
13.3.2 badram
 
3219
14.3.2 badram
2624
3220
-------------
2625
3221
 
2626
3222
 -- Command: badram addr,mask[,addr,mask...]
2644
3240
 
2645
3241
File: grub.info,  Node: blocklist,  Next: boot,  Prev: badram,  Up: Command-line and menu entry commands
2646
3242
 
2647
 
13.3.3 blocklist
 
3243
14.3.3 blocklist
2648
3244
----------------
2649
3245
 
2650
3246
 -- Command: blocklist file
2653
3249
 
2654
3250
File: grub.info,  Node: boot,  Next: cat,  Prev: blocklist,  Up: Command-line and menu entry commands
2655
3251
 
2656
 
13.3.4 boot
 
3252
14.3.4 boot
2657
3253
-----------
2658
3254
 
2659
3255
 -- Command: boot
2664
3260
 
2665
3261
File: grub.info,  Node: cat,  Next: chainloader,  Prev: boot,  Up: Command-line and menu entry commands
2666
3262
 
2667
 
13.3.5 cat
 
3263
14.3.5 cat
2668
3264
----------
2669
3265
 
2670
3266
 -- Command: cat [`--dos'] file
2682
3278
 
2683
3279
File: grub.info,  Node: chainloader,  Next: cmp,  Prev: cat,  Up: Command-line and menu entry commands
2684
3280
 
2685
 
13.3.6 chainloader
 
3281
14.3.6 chainloader
2686
3282
------------------
2687
3283
 
2688
3284
 -- Command: chainloader [`--force'] file
2697
3293
 
2698
3294
File: grub.info,  Node: cmp,  Next: configfile,  Prev: chainloader,  Up: Command-line and menu entry commands
2699
3295
 
2700
 
13.3.7 cmp
 
3296
14.3.7 cmp
2701
3297
----------
2702
3298
 
2703
3299
 -- Command: cmp file1 file2
2716
3312
 
2717
3313
File: grub.info,  Node: configfile,  Next: cpuid,  Prev: cmp,  Up: Command-line and menu entry commands
2718
3314
 
2719
 
13.3.8 configfile
 
3315
14.3.8 configfile
2720
3316
-----------------
2721
3317
 
2722
3318
 -- Command: configfile file
2726
3322
 
2727
3323
File: grub.info,  Node: cpuid,  Next: crc,  Prev: configfile,  Up: Command-line and menu entry commands
2728
3324
 
2729
 
13.3.9 cpuid
 
3325
14.3.9 cpuid
2730
3326
------------
2731
3327
 
2732
3328
 -- Command: cpuid [-l]
2742
3338
 
2743
3339
File: grub.info,  Node: crc,  Next: date,  Prev: cpuid,  Up: Command-line and menu entry commands
2744
3340
 
2745
 
13.3.10 crc
 
3341
14.3.10 crc
2746
3342
-----------
2747
3343
 
2748
3344
 -- Command: crc file
2751
3347
 
2752
3348
File: grub.info,  Node: date,  Next: drivemap,  Prev: crc,  Up: Command-line and menu entry commands
2753
3349
 
2754
 
13.3.11 date
 
3350
14.3.11 date
2755
3351
------------
2756
3352
 
2757
3353
 -- Command: date [[year-]month-day] [hour:minute[:second]]
2766
3362
 
2767
3363
File: grub.info,  Node: drivemap,  Next: echo,  Prev: date,  Up: Command-line and menu entry commands
2768
3364
 
2769
 
13.3.12 drivemap
 
3365
14.3.12 drivemap
2770
3366
----------------
2771
3367
 
2772
3368
 -- Command: drivemap `-l'|`-r'|[`-s'] from_drive to_drive
2790
3386
 
2791
3387
File: grub.info,  Node: echo,  Next: export,  Prev: drivemap,  Up: Command-line and menu entry commands
2792
3388
 
2793
 
13.3.13 echo
 
3389
14.3.13 echo
2794
3390
------------
2795
3391
 
2796
3392
 -- Command: echo [`-n'] [`-e'] string ...
2830
3426
     other character will print that character.
2831
3427
 
2832
3428
 
2833
 
File: grub.info,  Node: export,  Next: gettext,  Prev: echo,  Up: Command-line and menu entry commands
 
3429
File: grub.info,  Node: export,  Next: false,  Prev: echo,  Up: Command-line and menu entry commands
2834
3430
 
2835
 
13.3.14 export
 
3431
14.3.14 export
2836
3432
--------------
2837
3433
 
2838
3434
 -- Command: export envvar
2841
3437
     `configfile'.
2842
3438
 
2843
3439
 
2844
 
File: grub.info,  Node: gettext,  Next: gptsync,  Prev: export,  Up: Command-line and menu entry commands
2845
 
 
2846
 
13.3.15 gettext
 
3440
File: grub.info,  Node: false,  Next: gettext,  Prev: export,  Up: Command-line and menu entry commands
 
3441
 
 
3442
14.3.15 false
 
3443
-------------
 
3444
 
 
3445
 -- Command: false
 
3446
     Do nothing, unsuccessfully.  This is mainly useful in control
 
3447
     constructs such as `if' and `while' (*note Shell-like scripting::).
 
3448
 
 
3449
 
 
3450
File: grub.info,  Node: gettext,  Next: gptsync,  Prev: false,  Up: Command-line and menu entry commands
 
3451
 
 
3452
14.3.16 gettext
2847
3453
---------------
2848
3454
 
2849
3455
 -- Command: gettext string
2850
3456
     Translate STRING into the current language.
2851
3457
 
2852
3458
     The current language code is stored in the `lang' variable in
2853
 
     GRUB's environment.  Translation files in MO format are read from
2854
 
     `locale_dir', usually `/boot/grub/locale'.
 
3459
     GRUB's environment (*note lang::).  Translation files in MO format
 
3460
     are read from `locale_dir' (*note locale_dir::), usually
 
3461
     `/boot/grub/locale'.
2855
3462
 
2856
3463
 
2857
3464
File: grub.info,  Node: gptsync,  Next: halt,  Prev: gettext,  Up: Command-line and menu entry commands
2858
3465
 
2859
 
13.3.16 gptsync
 
3466
14.3.17 gptsync
2860
3467
---------------
2861
3468
 
2862
3469
 -- Command: gptsync device [partition[+/-[type]]] ...
2877
3484
 
2878
3485
File: grub.info,  Node: halt,  Next: help,  Prev: gptsync,  Up: Command-line and menu entry commands
2879
3486
 
2880
 
13.3.17 halt
 
3487
14.3.18 halt
2881
3488
------------
2882
3489
 
2883
3490
 -- Command: halt `--no-apm'
2888
3495
 
2889
3496
File: grub.info,  Node: help,  Next: initrd,  Prev: halt,  Up: Command-line and menu entry commands
2890
3497
 
2891
 
13.3.18 help
 
3498
14.3.19 help
2892
3499
------------
2893
3500
 
2894
3501
 -- Command: help [pattern ...]
2902
3509
 
2903
3510
File: grub.info,  Node: initrd,  Next: initrd16,  Prev: help,  Up: Command-line and menu entry commands
2904
3511
 
2905
 
13.3.19 initrd
 
3512
14.3.20 initrd
2906
3513
--------------
2907
3514
 
2908
3515
 -- Command: initrd file
2914
3521
 
2915
3522
File: grub.info,  Node: initrd16,  Next: insmod,  Prev: initrd,  Up: Command-line and menu entry commands
2916
3523
 
2917
 
13.3.20 initrd16
 
3524
14.3.21 initrd16
2918
3525
----------------
2919
3526
 
2920
3527
 -- Command: initrd16 file
2928
3535
 
2929
3536
File: grub.info,  Node: insmod,  Next: keystatus,  Prev: initrd16,  Up: Command-line and menu entry commands
2930
3537
 
2931
 
13.3.21 insmod
 
3538
14.3.22 insmod
2932
3539
--------------
2933
3540
 
2934
3541
 -- Command: insmod module
2937
3544
 
2938
3545
File: grub.info,  Node: keystatus,  Next: linux,  Prev: insmod,  Up: Command-line and menu entry commands
2939
3546
 
2940
 
13.3.22 keystatus
 
3547
14.3.23 keystatus
2941
3548
-----------------
2942
3549
 
2943
3550
 -- Command: keystatus [`--shift'] [`--ctrl'] [`--alt']
2953
3560
 
2954
3561
File: grub.info,  Node: linux,  Next: linux16,  Prev: keystatus,  Up: Command-line and menu entry commands
2955
3562
 
2956
 
13.3.23 linux
 
3563
14.3.24 linux
2957
3564
-------------
2958
3565
 
2959
3566
 -- Command: linux file ...
2971
3578
     command (*note linux16::) avoids this restriction.
2972
3579
 
2973
3580
 
2974
 
File: grub.info,  Node: linux16,  Next: ls,  Prev: linux,  Up: Command-line and menu entry commands
 
3581
File: grub.info,  Node: linux16,  Next: list_env,  Prev: linux,  Up: Command-line and menu entry commands
2975
3582
 
2976
 
13.3.24 linux16
 
3583
14.3.25 linux16
2977
3584
---------------
2978
3585
 
2979
3586
 -- Command: linux16 file ...
2990
3597
     This command is only available on x86 systems.
2991
3598
 
2992
3599
 
2993
 
File: grub.info,  Node: ls,  Next: parttool,  Prev: linux16,  Up: Command-line and menu entry commands
2994
 
 
2995
 
13.3.25 ls
 
3600
File: grub.info,  Node: list_env,  Next: load_env,  Prev: linux16,  Up: Command-line and menu entry commands
 
3601
 
 
3602
14.3.26 list_env
 
3603
----------------
 
3604
 
 
3605
 -- Command: list_env [`-f' file]
 
3606
     List all variables in the environment block file.  *Note
 
3607
     Environment block::.
 
3608
 
 
3609
     The `-f' option overrides the default location of the environment
 
3610
     block.
 
3611
 
 
3612
 
 
3613
File: grub.info,  Node: load_env,  Next: loopback,  Prev: list_env,  Up: Command-line and menu entry commands
 
3614
 
 
3615
14.3.27 load_env
 
3616
----------------
 
3617
 
 
3618
 -- Command: load_env [`-f' file]
 
3619
     Load all variables from the environment block file into the
 
3620
     environment.  *Note Environment block::.
 
3621
 
 
3622
     The `-f' option overrides the default location of the environment
 
3623
     block.
 
3624
 
 
3625
 
 
3626
File: grub.info,  Node: loopback,  Next: ls,  Prev: load_env,  Up: Command-line and menu entry commands
 
3627
 
 
3628
14.3.28 loopback
 
3629
----------------
 
3630
 
 
3631
 -- Command: loopback [`-d'] device file
 
3632
     Make the device named DEVICE correspond to the contents of the
 
3633
     filesystem image in FILE.  For example:
 
3634
 
 
3635
          loopback loop0 /path/to/image
 
3636
          ls (loop0)/
 
3637
 
 
3638
     With the `-d' option, delete a device previously created using this
 
3639
     command.
 
3640
 
 
3641
 
 
3642
File: grub.info,  Node: ls,  Next: normal,  Prev: loopback,  Up: Command-line and menu entry commands
 
3643
 
 
3644
14.3.29 ls
2996
3645
----------
2997
3646
 
2998
3647
 -- Command: ls [arg ...]
3009
3658
     directory.
3010
3659
 
3011
3660
 
3012
 
File: grub.info,  Node: parttool,  Next: password,  Prev: ls,  Up: Command-line and menu entry commands
3013
 
 
3014
 
13.3.26 parttool
 
3661
File: grub.info,  Node: normal,  Next: normal_exit,  Prev: ls,  Up: Command-line and menu entry commands
 
3662
 
 
3663
14.3.30 normal
 
3664
--------------
 
3665
 
 
3666
 -- Command: normal [file]
 
3667
     Enter normal mode and display the GRUB menu.
 
3668
 
 
3669
     In normal mode, commands, filesystem modules, and cryptography
 
3670
     modules are automatically loaded, and the full GRUB script parser
 
3671
     is available.  Other modules may be explicitly loaded using
 
3672
     `insmod' (*note insmod::).
 
3673
 
 
3674
     If a FILE is given, then commands will be read from that file.
 
3675
     Otherwise, they will be read from `$prefix/grub.cfg' if it exists.
 
3676
 
 
3677
     `normal' may be called from within normal mode, creating a nested
 
3678
     environment.  It is more usual to use `configfile' (*note
 
3679
     configfile::) for this.
 
3680
 
 
3681
 
 
3682
File: grub.info,  Node: normal_exit,  Next: parttool,  Prev: normal,  Up: Command-line and menu entry commands
 
3683
 
 
3684
14.3.31 normal_exit
 
3685
-------------------
 
3686
 
 
3687
 -- Command: normal_exit
 
3688
     Exit normal mode (*note normal::).  If this instance of normal
 
3689
     mode was not nested within another one, then return to rescue mode.
 
3690
 
 
3691
 
 
3692
File: grub.info,  Node: parttool,  Next: password,  Prev: normal_exit,  Up: Command-line and menu entry commands
 
3693
 
 
3694
14.3.32 parttool
3015
3695
----------------
3016
3696
 
3017
3697
 -- Command: parttool partition commands
3048
3728
 
3049
3729
File: grub.info,  Node: password,  Next: password_pbkdf2,  Prev: parttool,  Up: Command-line and menu entry commands
3050
3730
 
3051
 
13.3.27 password
 
3731
14.3.33 password
3052
3732
----------------
3053
3733
 
3054
3734
 -- Command: password user clear-password
3058
3738
 
3059
3739
File: grub.info,  Node: password_pbkdf2,  Next: play,  Prev: password,  Up: Command-line and menu entry commands
3060
3740
 
3061
 
13.3.28 password_pbkdf2
 
3741
14.3.34 password_pbkdf2
3062
3742
-----------------------
3063
3743
 
3064
3744
 -- Command: password_pbkdf2 user hashed-password
3069
3749
 
3070
3750
File: grub.info,  Node: play,  Next: pxe_unload,  Prev: password_pbkdf2,  Up: Command-line and menu entry commands
3071
3751
 
3072
 
13.3.29 play
 
3752
14.3.35 play
3073
3753
------------
3074
3754
 
3075
3755
 -- Command: play file | tempo [pitch1 duration1] [pitch2 duration2] ...
3087
3767
     pitch to 0 to produce a rest.
3088
3768
 
3089
3769
 
3090
 
File: grub.info,  Node: pxe_unload,  Next: reboot,  Prev: play,  Up: Command-line and menu entry commands
 
3770
File: grub.info,  Node: pxe_unload,  Next: read,  Prev: play,  Up: Command-line and menu entry commands
3091
3771
 
3092
 
13.3.30 pxe_unload
 
3772
14.3.36 pxe_unload
3093
3773
------------------
3094
3774
 
3095
3775
 -- Command: pxe_unload
3098
3778
     This command is only available on PC BIOS systems.
3099
3779
 
3100
3780
 
3101
 
File: grub.info,  Node: reboot,  Next: search,  Prev: pxe_unload,  Up: Command-line and menu entry commands
3102
 
 
3103
 
13.3.31 reboot
 
3781
File: grub.info,  Node: read,  Next: reboot,  Prev: pxe_unload,  Up: Command-line and menu entry commands
 
3782
 
 
3783
14.3.37 read
 
3784
------------
 
3785
 
 
3786
 -- Command: read [var]
 
3787
     Read a line of input from the user.  If an environment variable
 
3788
     VAR is given, set that environment variable to the line of input
 
3789
     that was read, with no terminating newline.
 
3790
 
 
3791
 
 
3792
File: grub.info,  Node: reboot,  Next: save_env,  Prev: read,  Up: Command-line and menu entry commands
 
3793
 
 
3794
14.3.38 reboot
3104
3795
--------------
3105
3796
 
3106
3797
 -- Command: reboot
3107
3798
     Reboot the computer.
3108
3799
 
3109
3800
 
3110
 
File: grub.info,  Node: search,  Next: sendkey,  Prev: reboot,  Up: Command-line and menu entry commands
3111
 
 
3112
 
13.3.32 search
 
3801
File: grub.info,  Node: save_env,  Next: search,  Prev: reboot,  Up: Command-line and menu entry commands
 
3802
 
 
3803
14.3.39 save_env
 
3804
----------------
 
3805
 
 
3806
 -- Command: save_env [`-f' file] var ...
 
3807
     Save the named variables from the environment to the environment
 
3808
     block file.  *Note Environment block::.
 
3809
 
 
3810
     The `-f' option overrides the default location of the environment
 
3811
     block.
 
3812
 
 
3813
 
 
3814
File: grub.info,  Node: search,  Next: sendkey,  Prev: save_env,  Up: Command-line and menu entry commands
 
3815
 
 
3816
14.3.40 search
3113
3817
--------------
3114
3818
 
3115
3819
 -- Command: search [`--file'|`--label'|`--fs-uuid'] [`--set' [var]]
3130
3834
 
3131
3835
File: grub.info,  Node: sendkey,  Next: set,  Prev: search,  Up: Command-line and menu entry commands
3132
3836
 
3133
 
13.3.33 sendkey
 
3837
14.3.41 sendkey
3134
3838
---------------
3135
3839
 
3136
3840
 -- Command: sendkey [`--num'|`--caps'|`--scroll'|`--insert'|
3271
3975
     This command is only available on PC BIOS systems.
3272
3976
 
3273
3977
 
3274
 
File: grub.info,  Node: set,  Next: unset,  Prev: sendkey,  Up: Command-line and menu entry commands
 
3978
File: grub.info,  Node: set,  Next: true,  Prev: sendkey,  Up: Command-line and menu entry commands
3275
3979
 
3276
 
13.3.34 set
 
3980
14.3.42 set
3277
3981
-----------
3278
3982
 
3279
3983
 -- Command: set [envvar=value]
3281
3985
     arguments, print all environment variables with their values.
3282
3986
 
3283
3987
 
3284
 
File: grub.info,  Node: unset,  Next: uppermem,  Prev: set,  Up: Command-line and menu entry commands
3285
 
 
3286
 
13.3.35 unset
 
3988
File: grub.info,  Node: true,  Next: unset,  Prev: set,  Up: Command-line and menu entry commands
 
3989
 
 
3990
14.3.43 true
 
3991
------------
 
3992
 
 
3993
 -- Command: true
 
3994
     Do nothing, successfully.  This is mainly useful in control
 
3995
     constructs such as `if' and `while' (*note Shell-like scripting::).
 
3996
 
 
3997
 
 
3998
File: grub.info,  Node: unset,  Next: uppermem,  Prev: true,  Up: Command-line and menu entry commands
 
3999
 
 
4000
14.3.44 unset
3287
4001
-------------
3288
4002
 
3289
4003
 -- Command: unset envvar
3292
4006
 
3293
4007
File: grub.info,  Node: uppermem,  Prev: unset,  Up: Command-line and menu entry commands
3294
4008
 
3295
 
13.3.36 uppermem
 
4009
14.3.45 uppermem
3296
4010
----------------
3297
4011
 
3298
4012
This command is not yet implemented for GRUB 2, although it is planned.
3300
4014
 
3301
4015
File: grub.info,  Node: Security,  Next: Supported kernels,  Prev: Commands,  Up: Top
3302
4016
 
3303
 
14 Authentication and authorisation
 
4017
15 Authentication and authorisation
3304
4018
***********************************
3305
4019
 
3306
4020
By default, the boot loader interface is accessible to anyone with
3365
4079
 
3366
4080
File: grub.info,  Node: Supported kernels,  Next: Troubleshooting,  Prev: Security,  Up: Top
3367
4081
 
3368
 
15 Supported boot targets
 
4082
16 Supported boot targets
3369
4083
*************************
3370
4084
 
3371
4085
X86 support is summarised in the following table. "Yes" means that the
3480
4194
   PowerPC and Sparc ports support only Linux. MIPS port supports Linux
3481
4195
and multiboot2.
3482
4196
 
3483
 
16 Boot tests
 
4197
17 Boot tests
3484
4198
*************
3485
4199
 
3486
4200
As you have seen in previous chapter the support matrix is pretty big
3518
4232
 
3519
4233
File: grub.info,  Node: Troubleshooting,  Next: Invoking grub-install,  Prev: Supported kernels,  Up: Top
3520
4234
 
3521
 
17 Error messages produced by GRUB
 
4235
18 Error messages produced by GRUB
3522
4236
**********************************
3523
4237
 
3524
4238
* Menu:
3528
4242
 
3529
4243
File: grub.info,  Node: GRUB only offers a rescue shell,  Up: Troubleshooting
3530
4244
 
3531
 
17.1 GRUB only offers a rescue shell
 
4245
18.1 GRUB only offers a rescue shell
3532
4246
====================================
3533
4247
 
3534
4248
GRUB's normal start-up procedure involves setting the `prefix'
3535
4249
environment variable to a value set in the core image by
3536
4250
`grub-install', setting the `root' variable to match, loading the
3537
 
`normal' module from the prefix, and running the `normal' command.
3538
 
This command is responsible for reading `/boot/grub/grub.cfg', running
3539
 
the menu, and doing all the useful things GRUB is supposed to do.
 
4251
`normal' module from the prefix, and running the `normal' command
 
4252
(*note normal::).  This command is responsible for reading
 
4253
`/boot/grub/grub.cfg', running the menu, and doing all the useful
 
4254
things GRUB is supposed to do.
3540
4255
 
3541
4256
   If, instead, you only get a rescue shell, this usually means that
3542
4257
GRUB failed to load the `normal' module for some reason.  It may be
3548
4263
 
3549
4264
     # Inspect the current prefix (and other preset variables):
3550
4265
     set
 
4266
     # Find out which devices are available:
 
4267
     ls
3551
4268
     # Set to the correct value, which might be something like this:
3552
4269
     set prefix=(hd0,1)/grub
3553
4270
     set root=(hd0,1)
3588
4305
 
3589
4306
File: grub.info,  Node: Invoking grub-install,  Next: Invoking grub-mkconfig,  Prev: Troubleshooting,  Up: Top
3590
4307
 
3591
 
18 Invoking grub-install
 
4308
19 Invoking grub-install
3592
4309
************************
3593
4310
 
3594
4311
The program `grub-install' installs GRUB on your drive using
3608
4325
`--version'
3609
4326
     Print the version number of GRUB and exit.
3610
4327
 
3611
 
`--root-directory=DIR'
3612
 
     Install GRUB images under the directory DIR instead of the root
3613
 
     directory. This option is useful when you want to install GRUB
3614
 
     into a separate partition or a removable disk. Here is an example
3615
 
     in which you have a separate "boot" partition which is mounted on
3616
 
     `/boot':
3617
 
 
3618
 
          grub-install --root-directory=/boot hd0
 
4328
`--boot-directory=DIR'
 
4329
     Install GRUB images under the directory `DIR/grub/' This option is
 
4330
     useful when you want to install GRUB into a separate partition or
 
4331
     a removable disk.  If this option is not specified then it
 
4332
     defaults to `/boot', so
 
4333
 
 
4334
          grub-install /dev/sda
 
4335
 
 
4336
     is equivalent to
 
4337
 
 
4338
          grub-install --boot-directory=/boot/ /dev/sda
 
4339
 
 
4340
     Here is an example in which you have a separate "boot" partition
 
4341
     which is mounted on `/mnt/boot':
 
4342
 
 
4343
          grub-install --boot-directory=/mnt/boot /dev/sdb
3619
4344
 
3620
4345
`--recheck'
3621
4346
     Recheck the device map, even if `/boot/grub/device.map' already
3625
4350
 
3626
4351
File: grub.info,  Node: Invoking grub-mkconfig,  Next: Invoking grub-mkpasswd-pbkdf2,  Prev: Invoking grub-install,  Up: Top
3627
4352
 
3628
 
19 Invoking grub-mkconfig
 
4353
20 Invoking grub-mkconfig
3629
4354
*************************
3630
4355
 
3631
4356
The program `grub-mkconfig' generates a configuration file for GRUB
3647
4372
     send it to standard output.
3648
4373
 
3649
4374
 
3650
 
File: grub.info,  Node: Invoking grub-mkpasswd-pbkdf2,  Next: Obtaining and Building GRUB,  Prev: Invoking grub-mkconfig,  Up: Top
 
4375
File: grub.info,  Node: Invoking grub-mkpasswd-pbkdf2,  Next: Invoking grub-mkrescue,  Prev: Invoking grub-mkconfig,  Up: Top
3651
4376
 
3652
 
20 Invoking grub-mkpasswd-pbkdf2
 
4377
21 Invoking grub-mkpasswd-pbkdf2
3653
4378
********************************
3654
4379
 
3655
4380
The program `grub-mkpasswd-pbkdf2' generates password hashes for GRUB
3673
4398
     Length of the salt.  Defaults to 64.
3674
4399
 
3675
4400
 
3676
 
File: grub.info,  Node: Obtaining and Building GRUB,  Next: Reporting bugs,  Prev: Invoking grub-mkpasswd-pbkdf2,  Up: Top
 
4401
File: grub.info,  Node: Invoking grub-mkrescue,  Next: Obtaining and Building GRUB,  Prev: Invoking grub-mkpasswd-pbkdf2,  Up: Top
 
4402
 
 
4403
22 Invoking grub-mkrescue
 
4404
*************************
 
4405
 
 
4406
The program `grub-mkrescue' generates a bootable GRUB rescue image
 
4407
(*note Making a GRUB bootable CD-ROM::).
 
4408
 
 
4409
     grub-mkrescue -o grub.iso
 
4410
 
 
4411
   All arguments not explicitly listed as `grub-mkrescue' options are
 
4412
passed on directly to `xorriso' in `mkisofs' emulation mode.  Options
 
4413
passed to `xorriso' will normally be interpreted as `mkisofs' options;
 
4414
if the option `--' is used, then anything after that will be
 
4415
interpreted as native `xorriso' options.
 
4416
 
 
4417
   Non-option arguments specify additional source directories.  This is
 
4418
commonly used to add extra files to the image:
 
4419
 
 
4420
     mkdir -p disk/boot/grub
 
4421
     (add extra files to `disk/boot/grub')
 
4422
     grub-mkrescue -o grub.iso disk
 
4423
 
 
4424
   `grub-mkrescue' accepts the following options:
 
4425
 
 
4426
`--help'
 
4427
     Print a summary of the command-line options and exit.
 
4428
 
 
4429
`--version'
 
4430
     Print the version number of GRUB and exit.
 
4431
 
 
4432
`-o FILE'
 
4433
`--output=FILE'
 
4434
     Save output in FILE.  This "option" is required.
 
4435
 
 
4436
`--modules=MODULES'
 
4437
     Pre-load the named GRUB modules in the image.  Multiple entries in
 
4438
     MODULES should be separated by whitespace (so you will probably
 
4439
     need to quote this for your shell).
 
4440
 
 
4441
`--rom-directory=DIR'
 
4442
     If generating images for the QEMU or Coreboot platforms, copy the
 
4443
     resulting `qemu.img' or `coreboot.elf' files respectively to the
 
4444
     DIR directory as well as including them in the image.
 
4445
 
 
4446
`--xorriso=FILE'
 
4447
     Use FILE as the `xorriso' program, rather than the built-in
 
4448
     default.
 
4449
 
 
4450
`--grub-mkimage=FILE'
 
4451
     Use FILE as the `grub-mkimage' program, rather than the built-in
 
4452
     default.
 
4453
 
 
4454
 
 
4455
File: grub.info,  Node: Obtaining and Building GRUB,  Next: Reporting bugs,  Prev: Invoking grub-mkrescue,  Up: Top
3677
4456
 
3678
4457
Appendix A How to obtain and build GRUB
3679
4458
***************************************
3686
4465
 
3687
4466
   GRUB is available from the GNU alpha archive site
3688
4467
`ftp://alpha.gnu.org/gnu/grub' or any of its mirrors. The file will be
3689
 
named grub-version.tar.gz. The current version is 1.99~rc1, so the file
3690
 
you should grab is:
 
4468
named grub-version.tar.gz. The current version is 1.99, so the file you
 
4469
should grab is:
3691
4470
 
3692
 
   `ftp://alpha.gnu.org/gnu/grub/grub-1.99~rc1.tar.gz'
 
4471
   `ftp://alpha.gnu.org/gnu/grub/grub-1.99.tar.gz'
3693
4472
 
3694
4473
   To unbundle GRUB use the instruction:
3695
4474
 
3696
 
     zcat grub-1.99~rc1.tar.gz | tar xvf -
 
4475
     zcat grub-1.99.tar.gz | tar xvf -
3697
4476
 
3698
 
   which will create a directory called `grub-1.99~rc1' with all the
 
4477
   which will create a directory called `grub-1.99' with all the
3699
4478
sources. You can look at the file `INSTALL' for detailed instructions
3700
4479
on how to build and install GRUB, but you should be able to just do:
3701
4480
 
3702
 
     cd grub-1.99~rc1
 
4481
     cd grub-1.99
3703
4482
     ./configure
3704
4483
     make install
3705
4484
 
3754
4533
 
3755
4534
  7. Write down anything that you think might be related. Please
3756
4535
     understand that we often need to reproduce the same problem you
3757
 
     encounterred in our environment. So your information should be
 
4536
     encountered in our environment. So your information should be
3758
4537
     sufficient for us to do the same thing--Don't forget that we
3759
4538
     cannot see your computer directly. If you are not sure whether to
3760
4539
     state a fact or leave it out, state it!  Reporting too many things
3769
4548
   Once we get your report, we will try to fix the bugs.
3770
4549
 
3771
4550
 
3772
 
File: grub.info,  Node: Future,  Next: Internals,  Prev: Reporting bugs,  Up: Top
 
4551
File: grub.info,  Node: Future,  Next: Copying This Manual,  Prev: Reporting bugs,  Up: Top
3773
4552
 
3774
4553
Appendix C Where GRUB will go
3775
4554
*****************************
3776
4555
 
3777
 
We started the next generation of GRUB, GRUB 2. GRUB 2 includes
3778
 
internationalization, dynamic module loading, real memory management,
3779
 
multiple architecture support, a scripting language, and many other
3780
 
nice features. If you are interested in the development of GRUB 2, take
3781
 
a look at the homepage (http://www.gnu.org/software/grub/grub.html).
3782
 
 
3783
 
 
3784
 
File: grub.info,  Node: Internals,  Next: Copying This Manual,  Prev: Future,  Up: Top
3785
 
 
3786
 
Appendix D Hacking GRUB
3787
 
***********************
3788
 
 
3789
 
* Menu:
3790
 
 
3791
 
* Getting the source code::
3792
 
* Finding your way around::
3793
 
 
3794
 
 
3795
 
File: grub.info,  Node: Getting the source code,  Next: Finding your way around,  Up: Internals
3796
 
 
3797
 
D.1 Getting the source code
3798
 
===========================
3799
 
 
3800
 
GRUB is maintained using the Bazaar revision control system
3801
 
(http://bazaar-vcs.org/).  To fetch the primary development branch:
3802
 
 
3803
 
     bzr get http://bzr.savannah.gnu.org/r/grub/trunk/grub
3804
 
 
3805
 
   The GRUB developers maintain several other branches with work in
3806
 
progress.  Of these, the most interesting is the experimental branch,
3807
 
which is a staging area for new code which we expect to eventually
3808
 
merge into trunk but which is not yet ready:
3809
 
 
3810
 
     bzr get http://bzr.savannah.gnu.org/r/grub/branches/experimental
3811
 
 
3812
 
   Once you have used `bzr get' to fetch an initial copy of a branch,
3813
 
you can use `bzr pull' to keep it up to date.  If you have modified your
3814
 
local version, you may need to resolve conflicts when pulling.
3815
 
 
3816
 
 
3817
 
File: grub.info,  Node: Finding your way around,  Prev: Getting the source code,  Up: Internals
3818
 
 
3819
 
D.2 Finding your way around
3820
 
===========================
3821
 
 
3822
 
Here is a brief map of the GRUB code base.
3823
 
 
3824
 
   GRUB uses Autoconf, but not (yet) Automake.  The top-level build
3825
 
rules are in `configure.ac', `Makefile.in', and `conf/*.rmk'.  Each
3826
 
`conf/*.rmk' file represents a particular target configuration, and is
3827
 
processed into GNU Make rules by `genmk.rb' (which you only need to
3828
 
look at if you are extending the build system).  If you are adding a new
3829
 
module which follows an existing pattern, such as a new command or a new
3830
 
filesystem implementation, it is usually easiest to grep `conf/*.rmk'
3831
 
for an existing example of that pattern to find out where it should be
3832
 
added.
3833
 
 
3834
 
   Low-level boot code, such as the MBR implementation on PC BIOS
3835
 
systems, is in the `boot/' directory.
3836
 
 
3837
 
   The GRUB kernel is in `kern/'.  This contains core facilities such as
3838
 
the device, disk, and file frameworks, environment variable handling,
3839
 
list processing, and so on.  The kernel should contain enough to get up
3840
 
to a rescue prompt.  Header files for kernel facilities, among others,
3841
 
are in `include/'.
3842
 
 
3843
 
   Terminal implementations are in `term/'.
3844
 
 
3845
 
   Disk access code is spread across `disk/' (for accessing the disk
3846
 
devices themselves), `partmap/' (for interpreting partition table
3847
 
data), and `fs/' (for accessing filesystems).  Note that, with the odd
3848
 
specialised exception, GRUB only contains code to _read_ from
3849
 
filesystems and tries to avoid containing any code to _write_ to
3850
 
filesystems; this lets us confidently assure users that GRUB cannot be
3851
 
responsible for filesystem corruption.
3852
 
 
3853
 
   PCI and USB bus handling is in `bus/'.
3854
 
 
3855
 
   Video handling code is in `video/'.  The graphical menu system uses
3856
 
this heavily, but is in a separate directory, `gfxmenu/'.
3857
 
 
3858
 
   Most commands are implemented by files in `commands/', with the
3859
 
following exceptions:
3860
 
 
3861
 
   * A few core commands live in `kern/corecmd.c'.
3862
 
 
3863
 
   * Commands related to normal mode live under `normal/'.
3864
 
 
3865
 
   * Commands that load and boot kernels live under `loader/'.
3866
 
 
3867
 
   * The `loopback' command is really a disk device, and so lives in
3868
 
     `disk/loopback.c'.
3869
 
 
3870
 
   * The `gettext' command lives under `gettext/'.
3871
 
 
3872
 
   * The `loadfont' and `lsfonts' commands live under `font/'.
3873
 
 
3874
 
   * The `serial', `terminfo', and `background_image' commands live
3875
 
     under `term/'.
3876
 
 
3877
 
   * The `efiemu_*' commands live under `efiemu/'.
3878
 
 
3879
 
   There are a few other special-purpose exceptions; grep for them if
3880
 
they matter to you.
3881
 
 
3882
 
 
3883
 
File: grub.info,  Node: Copying This Manual,  Next: Index,  Prev: Internals,  Up: Top
3884
 
 
3885
 
Appendix E Copying This Manual
 
4556
GRUB 2 is now quite stable and used in many production systems.  We are
 
4557
currently working towards a 2.0 release.
 
4558
 
 
4559
   If you are interested in the development of GRUB 2, take a look at
 
4560
the homepage (http://www.gnu.org/software/grub/grub.html).
 
4561
 
 
4562
 
 
4563
File: grub.info,  Node: Copying This Manual,  Next: Index,  Prev: Future,  Up: Top
 
4564
 
 
4565
Appendix D Copying This Manual
3886
4566
******************************
3887
4567
 
3888
4568
* Menu:
3892
4572
 
3893
4573
File: grub.info,  Node: GNU Free Documentation License,  Up: Copying This Manual
3894
4574
 
3895
 
E.1 GNU Free Documentation License
 
4575
D.1 GNU Free Documentation License
3896
4576
==================================
3897
4577
 
3898
4578
                      Version 1.2, November 2002
4290
4970
     you may choose any version ever published (not as a draft) by the
4291
4971
     Free Software Foundation.
4292
4972
 
4293
 
E.1.1 ADDENDUM: How to use this License for your documents
 
4973
D.1.1 ADDENDUM: How to use this License for your documents
4294
4974
----------------------------------------------------------
4295
4975
 
4296
4976
To use this License in a document you have written, include a copy of
4344
5024
* drivemap:                              drivemap.             (line  7)
4345
5025
* echo:                                  echo.                 (line  7)
4346
5026
* export:                                export.               (line  7)
 
5027
* false:                                 false.                (line  7)
4347
5028
* FDL, GNU Free Documentation License:   GNU Free Documentation License.
4348
5029
                                                               (line  6)
4349
5030
* gettext:                               gettext.              (line  7)
4356
5037
* keystatus:                             keystatus.            (line  7)
4357
5038
* linux:                                 linux.                (line  7)
4358
5039
* linux16:                               linux16.              (line  7)
 
5040
* list_env:                              list_env.             (line  7)
 
5041
* load_env:                              load_env.             (line  7)
 
5042
* loopback:                              loopback.             (line  7)
4359
5043
* ls:                                    ls.                   (line  7)
4360
5044
* menuentry:                             menuentry.            (line  8)
 
5045
* normal:                                normal.               (line  7)
 
5046
* normal_exit:                           normal_exit.          (line  7)
4361
5047
* parttool:                              parttool.             (line  7)
4362
5048
* password:                              password.             (line  7)
4363
5049
* password_pbkdf2:                       password_pbkdf2.      (line  7)
4364
5050
* play:                                  play.                 (line  7)
4365
5051
* pxe_unload:                            pxe_unload.           (line  7)
 
5052
* read:                                  read.                 (line  7)
4366
5053
* reboot:                                reboot.               (line  7)
 
5054
* save_env:                              save_env.             (line  7)
4367
5055
* search:                                search.               (line  8)
4368
5056
* sendkey:                               sendkey.              (line 12)
4369
5057
* serial:                                serial.               (line  8)
4370
5058
* set:                                   set.                  (line  7)
 
5059
* submenu:                               submenu.              (line  8)
4371
5060
* terminal_input:                        terminal_input.       (line  8)
4372
5061
* terminal_output:                       terminal_output.      (line  8)
4373
5062
* terminfo:                              terminfo.             (line  7)
 
5063
* true:                                  true.                 (line  7)
4374
5064
* unset:                                 unset.                (line  7)
4375
5065
 
4376
5066
 
4377
5067
 
4378
5068
Tag Table:
4379
 
Node: Top893
4380
 
Node: Introduction3154
4381
 
Node: Overview3598
4382
 
Node: Overview-Footnotes5582
4383
 
Ref: Overview-Footnote-15643
4384
 
Node: History5804
4385
 
Node: Changes from GRUB Legacy7892
4386
 
Node: Features10502
4387
 
Node: Features-Footnotes16493
4388
 
Ref: Features-Footnote-116554
4389
 
Ref: Features-Footnote-216700
4390
 
Node: Role of a boot loader16845
4391
 
Node: Role of a boot loader-Footnotes18183
4392
 
Ref: Role of a boot loader-Footnote-118270
4393
 
Node: Naming convention18349
4394
 
Node: Installation21224
4395
 
Node: Installing GRUB using grub-install22639
4396
 
Node: Making a GRUB bootable CD-ROM26285
4397
 
Node: Making a GRUB bootable CD-ROM-Footnotes28349
4398
 
Ref: Making a GRUB bootable CD-ROM-Footnote-128452
4399
 
Node: Device map28527
4400
 
Node: Booting30678
4401
 
Node: General boot methods31070
4402
 
Node: Loading an operating system directly31811
4403
 
Node: Chain-loading32542
4404
 
Node: OS-specific notes33513
4405
 
Node: GNU/Hurd33795
4406
 
Node: GNU/Linux34912
4407
 
Node: DOS/Windows36535
4408
 
Node: Configuration38308
4409
 
Node: Simple configuration38850
4410
 
Node: Shell-like scripting47178
4411
 
Node: Shell-like scripting-Footnotes55011
4412
 
Ref: Shell-like scripting-Footnote-155096
4413
 
Node: Embedded configuration55223
4414
 
Node: Theme file format58039
4415
 
Ref: Pixmap-styled progress bar59462
4416
 
Ref: Plain progress bar59474
4417
 
Ref: An example of the slices (in red) used for a terminal window. This drawing was created and sliced in Inkscape_62903
4418
 
Node: Network77125
4419
 
Node: Serial terminal79528
4420
 
Node: Vendor power-on keys81749
4421
 
Node: Images82710
4422
 
Node: Filesystem88787
4423
 
Node: Device syntax89474
4424
 
Node: File name syntax90966
4425
 
Node: Block list syntax91720
4426
 
Node: Interface92453
4427
 
Node: Command-line interface93272
4428
 
Node: Command-line interface-Footnotes95213
4429
 
Ref: Command-line interface-Footnote-195302
4430
 
Node: Menu interface95397
4431
 
Node: Menu entry editor96407
4432
 
Node: Commands97145
4433
 
Node: Menu-specific commands97872
4434
 
Node: menuentry98830
4435
 
Node: General commands99821
4436
 
Node: serial100317
4437
 
Node: terminal_input101362
4438
 
Node: terminal_output102028
4439
 
Node: terminfo102695
4440
 
Node: Command-line and menu entry commands103830
4441
 
Node: acpi106257
4442
 
Node: badram107296
4443
 
Node: blocklist108338
4444
 
Node: boot108572
4445
 
Node: cat108893
4446
 
Node: chainloader109528
4447
 
Node: cmp110150
4448
 
Node: configfile110701
4449
 
Node: cpuid111001
4450
 
Node: crc111466
4451
 
Node: date111656
4452
 
Node: drivemap112195
4453
 
Node: echo112998
4454
 
Node: export113935
4455
 
Node: gettext114247
4456
 
Node: gptsync114654
4457
 
Node: halt115599
4458
 
Node: help115925
4459
 
Node: initrd116388
4460
 
Node: initrd16116800
4461
 
Node: insmod117305
4462
 
Node: keystatus117527
4463
 
Node: linux118165
4464
 
Node: linux16119068
4465
 
Node: ls119776
4466
 
Node: parttool120322
4467
 
Node: password121818
4468
 
Node: password_pbkdf2122100
4469
 
Node: play122508
4470
 
Node: pxe_unload123260
4471
 
Node: reboot123541
4472
 
Node: search123730
4473
 
Node: sendkey124506
4474
 
Node: set130780
4475
 
Node: unset131079
4476
 
Node: uppermem131284
4477
 
Node: Security131485
4478
 
Node: Supported kernels134173
4479
 
Node: Troubleshooting141661
4480
 
Node: GRUB only offers a rescue shell141887
4481
 
Node: Invoking grub-install144742
4482
 
Node: Invoking grub-mkconfig145946
4483
 
Node: Invoking grub-mkpasswd-pbkdf2146583
4484
 
Node: Obtaining and Building GRUB147246
4485
 
Node: Reporting bugs148517
4486
 
Node: Future151321
4487
 
Node: Internals151811
4488
 
Node: Getting the source code152016
4489
 
Node: Finding your way around152890
4490
 
Node: Copying This Manual155441
4491
 
Node: GNU Free Documentation License155672
4492
 
Node: Index178080
 
5069
Node: Top961
 
5070
Node: Introduction3282
 
5071
Node: Overview3726
 
5072
Node: Overview-Footnotes5710
 
5073
Ref: Overview-Footnote-15771
 
5074
Node: History5932
 
5075
Node: Changes from GRUB Legacy8020
 
5076
Node: Features10496
 
5077
Node: Features-Footnotes16487
 
5078
Ref: Features-Footnote-116548
 
5079
Ref: Features-Footnote-216694
 
5080
Node: Role of a boot loader16839
 
5081
Node: Role of a boot loader-Footnotes18177
 
5082
Ref: Role of a boot loader-Footnote-118264
 
5083
Node: Naming convention18343
 
5084
Node: Installation21218
 
5085
Node: Installing GRUB using grub-install22321
 
5086
Node: Making a GRUB bootable CD-ROM24492
 
5087
Node: Making a GRUB bootable CD-ROM-Footnotes26346
 
5088
Ref: Making a GRUB bootable CD-ROM-Footnote-126449
 
5089
Node: Device map26524
 
5090
Node: BIOS installation28701
 
5091
Node: Booting32078
 
5092
Node: General boot methods32470
 
5093
Node: Loading an operating system directly33211
 
5094
Node: Chain-loading33942
 
5095
Node: OS-specific notes34913
 
5096
Node: GNU/Hurd35195
 
5097
Node: GNU/Linux36312
 
5098
Node: DOS/Windows37935
 
5099
Node: Configuration39708
 
5100
Node: Simple configuration40250
 
5101
Node: Shell-like scripting49686
 
5102
Node: Shell-like scripting-Footnotes57596
 
5103
Ref: Shell-like scripting-Footnote-157681
 
5104
Node: Embedded configuration57808
 
5105
Node: Theme file format60641
 
5106
Ref: Pixmap-styled progress bar62064
 
5107
Ref: Plain progress bar62076
 
5108
Ref: An example of the slices (in red) used for a terminal window. This drawing was created and sliced in Inkscape_65505
 
5109
Node: Network79727
 
5110
Node: Serial terminal82130
 
5111
Node: Vendor power-on keys84357
 
5112
Node: Images86187
 
5113
Node: Filesystem91147
 
5114
Node: Device syntax91834
 
5115
Node: File name syntax93326
 
5116
Node: Block list syntax94080
 
5117
Node: Interface94813
 
5118
Node: Command-line interface95635
 
5119
Node: Command-line interface-Footnotes97576
 
5120
Ref: Command-line interface-Footnote-197665
 
5121
Node: Menu interface97760
 
5122
Node: Menu entry editor98770
 
5123
Node: Environment99508
 
5124
Node: Special environment variables100212
 
5125
Node: biosnum100963
 
5126
Node: chosen101477
 
5127
Node: color_highlight101919
 
5128
Node: color_normal102325
 
5129
Node: debug102947
 
5130
Node: default103294
 
5131
Node: fallback104221
 
5132
Node: gfxmode104552
 
5133
Node: gfxpayload105285
 
5134
Node: gfxterm_font106437
 
5135
Node: icondir106736
 
5136
Node: lang107052
 
5137
Node: locale_dir107521
 
5138
Node: menu_color_highlight108030
 
5139
Node: menu_color_normal108526
 
5140
Node: net_pxe_boot_file109019
 
5141
Node: net_pxe_dhcp_server_name109230
 
5142
Node: net_pxe_domain109452
 
5143
Node: net_pxe_extensionspath109659
 
5144
Node: net_pxe_hostname109874
 
5145
Node: net_pxe_ip110073
 
5146
Node: net_pxe_mac110249
 
5147
Node: net_pxe_rootpath110427
 
5148
Node: pager110610
 
5149
Node: prefix110864
 
5150
Node: pxe_blksize111313
 
5151
Node: pxe_default_gateway111490
 
5152
Node: pxe_default_server111695
 
5153
Node: root111891
 
5154
Node: superusers112432
 
5155
Node: theme112680
 
5156
Node: timeout113001
 
5157
Node: Environment block113498
 
5158
Node: Commands114930
 
5159
Node: Menu-specific commands115763
 
5160
Node: menuentry116490
 
5161
Node: submenu117497
 
5162
Node: General commands118005
 
5163
Node: serial118501
 
5164
Node: terminal_input119546
 
5165
Node: terminal_output120212
 
5166
Node: terminfo120879
 
5167
Node: Command-line and menu entry commands122014
 
5168
Node: acpi124985
 
5169
Node: badram126024
 
5170
Node: blocklist127066
 
5171
Node: boot127300
 
5172
Node: cat127621
 
5173
Node: chainloader128256
 
5174
Node: cmp128878
 
5175
Node: configfile129429
 
5176
Node: cpuid129729
 
5177
Node: crc130194
 
5178
Node: date130384
 
5179
Node: drivemap130923
 
5180
Node: echo131726
 
5181
Node: export132663
 
5182
Node: false132973
 
5183
Node: gettext133269
 
5184
Node: gptsync133716
 
5185
Node: halt134661
 
5186
Node: help134987
 
5187
Node: initrd135450
 
5188
Node: initrd16135862
 
5189
Node: insmod136367
 
5190
Node: keystatus136589
 
5191
Node: linux137227
 
5192
Node: linux16138130
 
5193
Node: list_env138844
 
5194
Node: load_env139198
 
5195
Node: loopback139576
 
5196
Node: ls140024
 
5197
Node: normal140569
 
5198
Node: normal_exit141328
 
5199
Node: parttool141650
 
5200
Node: password143155
 
5201
Node: password_pbkdf2143437
 
5202
Node: play143845
 
5203
Node: pxe_unload144597
 
5204
Node: read144876
 
5205
Node: reboot145225
 
5206
Node: save_env145410
 
5207
Node: search145796
 
5208
Node: sendkey146574
 
5209
Node: set152848
 
5210
Node: true153146
 
5211
Node: unset153431
 
5212
Node: uppermem153637
 
5213
Node: Security153838
 
5214
Node: Supported kernels156526
 
5215
Node: Troubleshooting164014
 
5216
Node: GRUB only offers a rescue shell164240
 
5217
Node: Invoking grub-install167166
 
5218
Node: Invoking grub-mkconfig168544
 
5219
Node: Invoking grub-mkpasswd-pbkdf2169181
 
5220
Node: Invoking grub-mkrescue169839
 
5221
Node: Obtaining and Building GRUB171602
 
5222
Node: Reporting bugs172846
 
5223
Node: Future175649
 
5224
Node: Copying This Manual176049
 
5225
Node: GNU Free Documentation License176277
 
5226
Node: Index198685
4493
5227
 
4494
5228
End Tag Table