blob: 9406d08305e182b58842292e1682b925b7b32a97 [file] [log] [blame] [raw]
NEWS - list of user-visible changes between releases of GRUB
New in 1.0 - XXXX-XX-XX:
* The command "setkey" resets key mappings, when no argument is
specified.
* Linux devfs support is added.
* The utility ``grub-install'' accepts a new option, `--recheck'. If
this option is specified, probe a device map, even if it already
exists. You should use this option whenever you add/remove a disk.
* The command "password" supports a md5 password if the option `--md5'
is given. This command can now also be used to protect specific menu
items with their own passwords.
* New command, "displayapm".
* New command, "md5crypt".
* The new utility ``grub-md5-crypt'' is a fontend of the grub shell. It
encrypts a password in MD5 format.
* New commands, "testvbe" and "vbeprobe".
* The configure script accepts a new option, `--enable-preset-menu'. You
can embed a arbitrary configuration which will be used when Stage 2
cannot open a real configuration file, with this option. The argument
must be an existing file.
New in 0.5.96 - 2000-10-04:
* New commands, "reboot" and "halt".
* New command, "hiddenmenu". You can hide the menu interface by default
with this command.
* You can specify `--no-mem-option' to the command "kernel", if you want
GRUB not to pass a Linux's mem option automatically.
* Now GRUB is compliant with the Linux/i386 boot protocol version 2.02.
* The network support is updated to Etherboot-4.6.4.
* Symlinks in ReiserFS are supported.
* Add a workaround into the grub shell, so that it works fine even under
Linux 2.4.
* Add a new option `--stage2' into the commands "install" and "setup",
to let the grub shell know what the file name of Stage 2 is under your
operating system. You must specify the option correctly, if you cannot
unmount the partition where GRUB images reside. We'd recommend _not_
using those commands directly, but using the utility "grub-install"
instead, because this is safer.
* One violation against the Network Boot Image Proposal was found and
fixed. So now the image `nbgrub' can work fine even with a card such
as rtl8139.
* Serial terminal support is added. The configure script accepts
a new option `--disable-serial'. Unless it is specified, you can use
two new commands, "serial" and "terminal" in the command-line and the
menu. See the manual, for more details.
* Preserve the possible magic number used by Windows NT in a MBR.
* The command-line interface is switched to single-line editing mode.
* Only for developers: the configure script accepts
`--enable-serial-speed-simulation', which is useful when you want to
simulate the speed of a serial device on a psuedo terminal.
* Also only for developers: you can specify an optional argument to the
option `--hold' for the grub shell. The argument means how many
seconds the grub shell should wait until diving into the main routine.
* New command, "savedefault". Now you can save current entry number to
your disk with this command and then you can set the default boot
entry to it by the command "default saved".
* Add a new option `--prefix' into the command "setup", so that you can
specify the name of a directory which contains GRUB images. And, the
behavior of this command changed slightly, that is, this command now
searchs stage1 automatically under "/boot/grub" and "/grub", unless
you specify the option `--prefix'.
* The utility `grub-install' recognizes a separate boot partition
automatically.
* New commands, "partnew" and "parttype". You can modify partition
tables with these commands.
New in 0.5.95 - 2000-06-27:
* NetBSD ELF kernel support is added. You have to specify the new option
to the command "kernel". See below.
* Added a new option `--type=TYPE' into the command "kernel". This
option suggests what type of kernel you want to load. TYPE must be
either of "netbsd", "freebsd", "openbsd", "linux", "biglinux" and
"multiboot". Actually, this option will be necessary only if you want
to load a NetBSD ELF kernel, because GRUB can automatically determine
a kernel type in the other cases.
* ReiserFS support is added.
* Added a new option `--force-lba' into the command "install". This
option disables some sanity checks for LBA mode (but not all). If you
are sure that your machine supports LBA mode but GRUB doesn't work in
LBA mode, you should specify it. It is necessary if your BIOS is too
buggy. In the previous version, it was a compile-time option, but you
don't have to recompile GRUB any longer.
* Likewise, now the command "setup" and the script "grub-install" also
accept `--force-lba' option. Specifying this option to "setup" or
"grub-install" has the same effect as to the command "install".
* The configure script doesn't accept the option
`--disable-lba-support-bitmap-check' any longer. Use the option above.
* The network support is updated to Etherboot-4.6.1. So now we have
3Com59x and DEPCA drivers.
* Now you can omit the configuration file argument to the command
"password". If you omit it, then GRUB will just unlock privileged
instructions (such as `c') when you enter a correct password.
* The new command "lock" can be used to prevent end-users from executing
arbitrary menu entries. This command will emit an error until the user
enters a correct password.
* Recognize the Linux extended partition type.
* Pass a correct memory size to Linux and *BSD.
* Diskless support is added. Now configure accepts --enable-diskless,
and "make" will produce two additional images, ``nbgrub'' for Net Boot
Image Proposal and ``pxegrub'' for Preboot Execution Environment. See
the documentation, for more details.
* The command "tftpserver" overrides a TFTP server address returned by a
BOOTP server, a DHCP server or a RARP server.
* Fix a serious bug about LBA support. It is possible that you don't
disable the LBA support bitmap check any longer. Please send a report,
if you must still disable it. We need to know if we should get rid of
the option.
New in 0.5.94 - 2000-03-06:
* Stage 1 supports both the LBA mode and the CHS mode.
* The NetBSD and OpenBSD boot bug is fixed.
* The more automatic installation command "setup" is added.
* The command "embed" embeds a Stage 1.5 in the sectors after a MBR.
* Support symbolic color name syntax in the command "color".
* The grub shell loads the BIOS drive mapping information from a device
map file if it is specified and can be opened. If not found, try to
create it based on the guessed information.
* NetBSD support in the grub shell is improved.
* A simple checker for the format of a Multiboot kernel, ``mbchk'', is
added.
* The command "find" searches for a filename in all devices and print
the list of the devices which contain the file.
* The command "map" maps a drive to another drive so that we can
chain-load some foolish operating systems (such as DOS) even if such
an operating system resides at a non-first drive.
* The command "setkey" maps a key to another.
* The GRUB manual is rewritten, and now consists of three parts and
appendices.
* The command "ioprobe" detects what I/O ports are used for a BIOS
drive.
* OpenBSD support in the grub shell is improved.
* The command "install" can now patch a Stage 2 with a different
filename from "/boot/grub/menu.lst" even if a Stage 1.5 is used.
* New program, ``grub-install''.
* The command "blocklist" prints the blocklist notation of a file.
* The command "chainloader" now accepts an option "--force", which is
required if you want to chain-load a boot loader defective in the
signature, such as SCO Unixware 7.1.
* The netboot support is heavily rewritten, based on Etherboot-4.4.3.
Most of the device drivers are stolen from it, so we now have many
network drivers. See netboot/README.netboot for more details.
* Now configure accepts the option `--disable-lba-support-bitmap-check'
to ignore an incorrect LBA support bitmap returned by a buggy BIOS. If
you are sure that your BIOS does support LBA mode but GRUB doesn't
work in LBA mode, recompile GRUB with this option specified. You can
check if GRUB accesses a drive in LBA mode by the command "geometry".
* New commands "bootp", "dhcp" and "rarp" can be used to initialize a
network device and get IP addresses from a network.
* Long filename support in the FAT filesystem is added.
* The command "cmp" compares each bytes in two files.
New in 0.5.93 - 1999-10-30:
* ELF format of FreeBSD kernel is supported.
* Support the partition ids for NetBSD and OpenBSD.
* Exit from the grub shell just by pushing the key `q' in the menu.
* New options for configure can disable some functions in Stage 2. See
the output from `configure --help' for more information.
* FAT32 support is added.
* Minix fs support is added.
* New commands "hide" and "unhide".
* The character `=' after a command is not necessary any longer, but it
is supported for backward compatibility.
* The command "help" displays helpful information about builtin
commands.
* The command "geometry" displays the information of a drive specified
and set the geometry to arbitrary C/H/S values if the optional
arguments are used.
* The command "configfile" loads a configuration file interactively.
* The command "device" assigns a BIOS drive to an arbitrary filename in
the grub shell.
* The option `--no-floppy' force the grub shell to assume that there is
no floppy, and the option `--probe-second-floppy' enables the probe of
the second floppy drive.
* Integrated the netboot support in the Dresden version of GRUB.
* FreeBSD support in the grub shell is improved.
* Killing (C-u and C-k), yanking (C-y) and manipulating the history
(C-p and C-n) are supported.
* The address argument for the command "install" is now optional.
* Better completion support.
* The command "cat" displays the contents of a file.
New in 0.5.92 - 1999-07-26:
* Bug fixes (i.e. Stage 1.5 can work fine again).
* The /sbin/grub stage2 simulator now works at least on GNU/Linux, and
uses the Linux HDIO_GETGEO ioctl to determine hard disk geometry.
* TAB not only lists filenames, but also completes a filename when the
filename is unique.
* Password is not echoed back, put an asterisk for each of input
characters.
* stage2_debug is removed, and the debugging features are added into
stage2.
* Color menu support.
* New command "quit".
* The man page for /sbin/grub.
* All documents become Texinfo.
* Linux video mode selection is supported.
* The new Stage 1 `stage1_lba' supports LBA addressing mode.
New in 0.5.91 - 1999-03-14, Gordon Matzigkeit:
* LBA and preliminary AWARD BIOS disk extension support.
* Started docs/grub.texi.
* /sbin/grub GUI now works (but it doesn't yet access disks properly).
Run `configure --enable-sbin-grub' to build this program in the grub
subdirectory.
New in 0.5.90 - 1999-03-01, Gordon Matzigkeit:
* Bug fixes.
* GRUB understands symlinks on ext2fs (but still not ffs).
* Many source code and build cleanups to comply with GNU standards.
New in 0.5 - 1998-08-20, Erich Boleyn:
* Improved error messages in the stage1 to be strings (easier to read
than the previous case of single characters), and removed any
display in the case of no error (less confusing).
* New document describing error conditions and messages.
* Improved configure/build process.
* Made the early bootup interrupt-safe. Wasn't doing cli/sti when
necessary sometimes.
* GRUB now shuts off the floppy before transferring control to any
other programs/modules/loaders. (chain-loading doesn't matter here,
just loading 32-bit modules/kernels)
* Fixed a few stupid bugs, including a several in the ext2fs code.
* Linux boot format support extended from just "zImage" to include
"bzImage" and initial ramdisk (also called "initrd") support for
both. "initrd" support is untested, but the critical parts were
taken from a supplied patch and seem OK.
* Several new command features. See the command-listing for details.
New in 0.4 - 1998-03-19, Erich Boleyn:
* GRUB now correctly points ES:SI at a partition descriptor when
chain-loading.
* Many minor bugs fixed (some in the build scripts).
* Intel MPS 1.4 config/check code is totally new, and the "syscmd="
command is completely removed. Check command-listing for details.
Version 0.4-pre, Erich Boleyn:
* Reorganized docs, moved most "NOTE" items to a FAQ (with new entries
as well).
* Now supports automatic decompression of any files loaded via the
GRUB stage2 filesystem code. Simply compress the file using GNU
gzip normally, then when loading, the GRUB internals will see the
contents in the decompressed state... i.e. all GRUB functions
operate normally as if it is the uncompressed file. An extra
version of the "module" loading function has been added which
disables this functionality if desired (in all the other cases, not
decompressing doesn't make sense).
* Changed device strings used in filesystem code to more logical
format. Added "relative" disk and partition capability, see
command-listing and filesystem syntax description for details.
* "install=" command vastly improved. Also moved to non-debug area.
Check command-listing and install documentation for details.
* Added several new commands: "rootnoverify=", "uppermem=", and a new
debug command "displaymem". Check command-listing for details.
* Added versioning numbers (and subsequently broke compatibility with
some of the previous code, so GRUB should be re-installed!).
* Added unattended booting support via new "fallback=" command.
* During debug probe of SMP configuration table compatible with Intel
MPS 1.4 standard, GRUB now checks for a pointer in the EBDA.
* Using a "default=" entry greater than 11 caused the UI to do funny
things (it didn't pre-scroll the list to the appropriate place).
* Reading files on FAT floppies had yet more problems related by many
users of version 0.3 6/17/96. Again, all known problems fixed.
* "Extended" partitions now work (still cannot make an extended
partition active with "makeactive" command).
* The build environment is greatly simplified, now using an
autoconf-like "configure" script.
New in 0.3-19960617 - 1996-06-17, Erich Boleyn:
* Yet more documentation improvements.
* Known bugs in floppy operation fixed (12-bit FAT didn't work for
most cases, and inserting other floppies didn't flush the filesystem
cache).
* NASTY uninitialized pointer bug causing "raw" floppy operation to
crash on several PCs is now fixed. This seems to have been the root
cause of all of the compatibility problems that have currently been
observed.
* debug-mode command added to automate most difficult step of
installation for common cases (new install method #4).
* Testing "mini-debugger" now merged with command-line when "DEBUG"
defined in compile (no SYSDEBUG option anymore). See description of
commands in the command-line for details.
New in 0.3-19960602 - 1996-06-02, Erich Boleyn:
* Completed initial licenses.
* Initial filesystem documentation written.
* Block-list and FAT filesystems now work as documented (in
particular, for the blocklist filesystem, shortcuts like "+1" for
"0+1,512" now work correctly).
* Fixed several problems (old and new) in the various filesystems (for
example, the ext2fs filesystem code is now much faster, as it caches
some mapping blocks where it didn't at all before). Filesystem
semantics are much more uniform as well (symbolic links and reading
a directory as a file now return errors where it would silently fail
before).
* "makeactive" now works for standard PC partitions on hard disks (not
extended partitions... so any PC partition number above 3 will give
a "no such partition" error). If a BSD sub-partition is is used, it
will ignore it, and only use the primary PC partition number.
New in 0.3-19960520 - 1996-05-20, Erich Boleyn:
* Updated instructions (though still very sparse).
* New floppy probe (works much like the Linux floppy boot probe)
attempts to find the size of a floppy in a drive. Might still need
work! Please try on various floppy drives with various media!
* New floppy handler will claim a non-existent drive if the floppy
disk isn't present in the drive. (for example, it won't be on the
list of installed drives unless a floppy is present)
* Stage1 now compatible with both a hard disk MBR and the DOS BIOS
parameter block (see "install/README" for more details on how this
can be used).
* Block-list filesystem partially works, as described in the file
"NOTES". Loading an a.out or elf kernel won't work with it, but all
other filetypes pretty much should. (certainly chain-loading works
OK)
NOTE: you must use the full format "0+1,512" for just he first
block... no parameters can be implicit in this version.. THis is
being fixed too.
* Linux ext2 filesystem works. (it's very slow for big files, but
this is being fixed)
* Linux boot type now supported. Use a standard piggybacked image as
with LILO. Put in hack to support >64MB via GRUB placing the RAM
size as the first item on the command-line automatically. Must pass
root partition on command-line using normal Linux syntax... if not,
it uses it's builtin root partition.
* Supports chain-loading. For details, see "COMMANDS" and the
examples directory. (was able to boot DOS and Windows NT on my test
box). NOTE that the "root partition" must be set to work right.
"makeactive" is currently a no-op.
* Several weird bugs fixed. One important note: If you recompile, it
will warn about a clash with builtin "strcmp". This is normal...
do NOT remove the strcmp definition, as then GCC will possibly put
inline code from it's own builtin function in some places. (my
strcmp has slightly different functionality, hence the problem)
* Mini-debugger is currently broken.
New in 0.2 - 1996-04-12, Erich Boleyn:
* Completely new menu-based UI. See "COMMANDS" and the examples
directory for details. NOTE that the argument to a command must be
preceded by a space between it and the '=', in both the config file
and the command-line. This will be fixed.
New in 0.1 - 1996-03-31, Erich Boleyn:
* Newer version of Multiboot Standard (version 0.6) supported.
* Autodetects kernel types. Supports Multiboot, FreeBSD, NetBSD
(Linux isn't finished).
* Stage 1.5 works now. Default setup is now for working with a BSD
FFS floppy loading "/grub/stage2" as the main bootloader.
* Filesystem support improved. It didn't work on many floppies before
(problem with the partition-detection code).
* Memory probe now supports arbitrary amounts of RAM (some technical
limitations exist, see Multiboot standard version 0.6 for details).
* A mini-debugger is included by default, activated by hitting '~' on
the command-line (it might interfere with things, but it seems OK
for my alpha-testing). The commands are in the function
"enter_sysdebug" defined in "common.c". If you have an Intel MPS-
compatible machine, there are extra commands enabled for SMP cpu
testing. 'q' exits and goes back to what you were doing before.
New in 0.0-19960206 - 1996-02-06, Erich Boleyn:
* Newer version of Multiboot Standard (version 0.4) supported.
New in 0.0-19951210 - 1995-12-10, Erich Boleyn:
* You can now perform TAB-based completion listing of any valid
partially completed disk/partition/file-name combination. Try it
out to see what you like, examples are in the NOTES file under
"Device completion".
* Fixed a bug causing the memory size routine to sometimes report
ridiculous values.
* Fixed some documentation (what little there is :-/ and a few
assembly bugs in the BIOS access routines that nobody reported yet,
so I won't detail it here.