| NEWS - list of user-visible changes between releases of GRUB |
| |
| New in 0.94 - 2004-01-25: |
| * Support building on x86-64 with gcc -m32. |
| * Use a BIOS call to turn on/off Gate A20. This should solve various |
| problems related to Gate A20 in modern BIOSes. |
| * Add a workaround for buggy BIOSes (notably HP Vectra series) which |
| don't pass the boot drive correctly. |
| * Display "GNU GRUB" instead of "GRUB" in the menu. |
| * Add support for QNX RTP into the grub shell. |
| * Add support for the initrd max address of a kernel header in Linux. |
| * Support 32 bit and 64 bit dev_t. |
| * Add support for an install device in GRUB's notation with no |
| parenthesis (e.g. grub-install hd0). |
| * Improve the manual a lot. |
| |
| New in 0.93 - 2002-12-08: |
| * Define the behavior of the boot loader when the load end address is |
| zero and the bss end address is zero in the Multiboot Specification. |
| Also, add the support into GRUB. |
| * Finally, we have a Bug Tracking System! Now the preferable way to |
| report bugs is to use the BTS rather than sending e-mail to bug-grub. |
| See <http://bugcomm.enbug.org/?project=grub&mode=project>, for more |
| details. |
| * The appendix "FAQ" in the manual is removed. See the GNU GRUB FAQ on |
| the web <http://www.gnu.org/software/grub/grub-faq.html> instead. |
| * The terminal handling code is rewritten radically, and many bugfixes |
| are made at the same time. |
| * The command "color" is effective even in the command-line. |
| * The command "terminal" takes two new options, ``--no-echo'' and |
| ``--no-edit''. If you specify ``--no-echo'', GRUB won't echo back |
| input characters. If you specify ``--no-edit'', GRUB will disable the |
| BASH-like editing feature. These options are useful when using an |
| intelligent terminal (such as the comint mode in GNU Emacs). |
| * The utility ``grub-md5-crypt'' prompts to retype a password and checks |
| if the passwords match. |
| * Support for booting Linux is rewritten, so GRUB now supports |
| large-EBDA systems. |
| * The menu interfaces supports Page Up, Page Down, and Right Key. |
| * New command "terminfo", for vt100-incompatible terminals. |
| * New options, ``-D'', ``-g'' and ``-m'' are supported for FreeBSD. |
| |
| New in 0.92 - 2002-04-30: |
| * The command "displaymem" uses only hex digits for consistency. |
| * The netboot code goes back to the progress bars instead of dots, for |
| the notation of data transfers. And, that is displayed only in debug |
| mode, that is to say, nothing is displayed by default. Remember that |
| you can turn on debug mode via the command "debug". |
| * The command "help" doesn't show all the available commands by default, |
| when no argument is specified. Rarely used commands (such as |
| "testload") and useless commands in interactive use (such as |
| "savedefault") are hidden. If you want to see help messages for those |
| commands, specify the new option "--all". |
| * A built-in, `more'-like pager is added. When a command prints too many |
| lines to fit the screen, GRUB waits until you hit return key. This |
| feature can be turned off by the new command "pager". |
| * The command "terminal" accepts a new option, "--lines=LINES". You can |
| set the maximum number of lines arbitrarily with this option. If you |
| don't specify it, the maximum number will be 24. |
| * The command "terminal" accepts another new option, "--silent". You can |
| suppress the "Press any key to continue" message with this option. |
| * The mem= option for Linux is recognized and used to limit the maximum |
| address of initrd. |
| * A fallback entry is executed immediately after a default entry, |
| without prompting a user's intervention, as the manual has ever been |
| saying. |
| * The utility ``grub-install'' makes sure that GRUB images have been |
| written to a physical disk completely. To assist this feature, a new |
| command "dump" is added. |
| |
| New in 0.91 - 2002-01-21: |
| * Support for Linux DAC960 is added. |
| * JFS and XFS support is added. |
| * The commands "hide" and "unhide" support logical partitions. |
| * The utility ``grub-install'' supports NetBSD. |
| * The network support is updated to Etherboot-5.0.5. |
| * The manner of handling the preset menu changes. In the previous |
| implementation, the preset menu is used only when opening the |
| configuration file failed. Now try to use the preset menu first. And, |
| if the configuration file is available, it is read after readoing the |
| preset menu. In this case, menu entries in the preset menu (if any) |
| are overrided by the configuration file. |
| * Diskless support is a bit changed. In the previous, GRUB set up a |
| network automatically via a special function. In the current, the |
| function is gone and the preset menu feature is used (i.e. just |
| execute the command "bootp" as if you specified it in the preset |
| menu). This has no impact against most users, but you should take care |
| if using the preset menu for your own purpose, because GRUB doesn't |
| call "bootp" implicitly when the preset menu is used explicitly. In |
| this case, you would probably need to insert commands to initialize a |
| network into your preset menu. |
| * Important bugfixes are made for ReiserFS, APM, TFTP, LBA, etc. |
| |
| New in 0.90 - 2001-07-11: |
| * 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 frontend 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 an 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. |
| * EZ-BIOS support is added. |
| * Booting Windows from a logical partition is supported. |
| * The example Multiboot kernel in the directory "docs" is built, if you |
| specify the option `--enable-example-kernel' to the configure script. |
| * New command, "ifconfig". |
| * Linux software RAID support is added (only for RAID-1). |
| * Hercules support is added. |
| * The configure script now accepts `--disable-auto-linux-mem-opt', which |
| has the same meaning as you specify the option `--no-mem-option' to the |
| command "kernel". |
| * Jump to the physical entry address of a Multiboot kernel when booting |
| it up. The old behavior was to use the virtual one, regardless of the |
| setting of the physical address. |
| * The commands "bootp" and "dhcp" accepts a new option |
| `--with-configfile', so that you can load a remotely specified |
| configuration file automatically, like the network boot images. |
| * VSTa filesystem support is added. |
| * ELF symbol loading support is added. |
| |
| 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. |