GRUB (GRand Unified Boot Loader) is a flexible boot loader. It supports GNU's multiboot standard, and also chain loading (ie, it can use boot block from partitions; this allows it to boot operating systems such as Windows.)

It also knows about many different partition types, which allows it to read files and kernels from partitions themselves; This means that you can edit your boot menu file while the machine is running without need to reinstall, and that location of the kernel can be changed "on the fly".

It's very pretty, compared to LILO: It uses a pretty character-based menu with configurable colors! I've booted my machine a few times just to see the pretty menu... =)

Also, it's nicer than LILO because with that I have never needed to add any "mem=xxxx" lines - Linux boots and the memory is Out There. And, 0.9x also have very good "grub-floppy" and "grub-install" programs for boot floppy making and hard disk boot block installation - no need to dd files to disks anymore, no need to boot from floppy and install stuff. Basic installation is just as easy as LILO install now, maybe even easier: Make the menu file, Run grub-install with a couple of parameters, and you're set!

Here's also an interesting quote from Gordon Matzigkeit that was taken from the GRUB manual:

Some people like to acknowledge both the operating system and kernel when they talk about their computers, so they might say they use "GNU/Linux" or "GNU/Hurd". Other people seem to think that the kernel is the most important part of the system, so they like to call their GNU operating systems "Linux systems."

I, personally, believe that this is a grave injustice, because the boot loader is the most important software of all. I used to refer to the above systems as either "LILO" or "GRUB" systems.

Unfortunately, nobody ever understood what I was talking about; now I just use the word "GNU" as a pseudonym for GRUB.

So, if you ever hear people talking about their alleged "GNU" systems, remember that they are actually paying homage to the best boot loader around... GRUB!

"Grub first, then ethics." - Bertold Brecht

To expand upon WWWWolf's writeup:

GRUB gives your GNU/Linux (or GNU/HURD) box the kind of proper, intelligent boot loader that your colleagues running Unix on fancy workstations have long taken for granted. No, it doesn't contain a full FORTH implementation like Sun and Apple's Open Firmware ... but it does give you an interactive boot process from which you can select boot media, navigate your filesystems, and in general avoid the obscurity and evil of LILO.

By way of comparison: If you are using LILO, you must specify your system's bootable partitions and kernels precisely in lilo.conf, then run the lilo installer. This builds you a new master boot record, statically configured with the physical disk location of your kernel, as well as your other boot settings. If you reboot and your settings are inaccurate -- or if you replaced your kernel and forgot to re-run lilo -- your system will become unbootable. In contrast, if you have GRUB installed in your MBR, you can specify all your boot settings at boot time -- disk, partition, and the filename of your kernel. If you're not quite sure of your kernel's filename, you can still boot: the GRUB prompt supports tab completion, so you can bonk around your filesystem until you find something that resembles a kernel.

GRUB is quite useful if you are trying out Linux kernels of different versions, or compiled with different components. Rather than setting up an endless series of stanzas in a configuration file as you would under LILO, you can simply give the filename of your preferred kernel at boot time.

Oh, and by the way -- GRUB can also boot BSD kernels, as well as Linux kernels, HURDs, and chain-loaded proprietary systems such as Microsoft Windows.

It shouldn't come as any surprise that the author of this writeup has recently given up getting LILO to behave nicely on one of his Debian boxen, and has resorted (with great relief) to GRUB. It's good stuff, and it ain't hard to install if you know the difference between a filesystem and a hole in the ground. Try it out.

Grub is "an open source, distributed internet crawler!"1 Also known as grubclient (so as not to be confused with grub the boot loader).

For about two and a half years now, Kord Campbell has been trying to make Grub an important part of the internet. He has set up a "for profit" company that uses the distributed computing power of volunteers plus a central database to construct a comprehensive, up to date list of urls. His goal is to index the entire web updating the list every day!

This Open Source project is licensed under the GNU General Public License (GPL) with the source code at SourceForge.

One business model has his company selling a live feed of his database to large search engines like Yahoo and Google. These search engines can then get an "up to the minute" status report of a url. This means fewer broken links in the search results. Search engines can also use statistics on how frequently a url changes to prioritize their updates and the search engine can then re-index pages that have changed giving more accurate and timely search results.

He also recognizes that the "little guy" may need a low usage feed which he would offer as a free service.

What's in it for me? The grub client has a feature that allows local servers to be crawled as a priority. This means that your urls will be updated in the database first. In theory, every web server could also run Grub. As the content of a web site changes so would the data collected by the search engines using the Grub database.

Grub can be set to use as much or as little bandwidth as you like. If you donate 1% of a DSL connection (3.5 mega-bits per second), it would index your entire site plus a few others about once a day (up to about an estimated 2,400 pages a day). This is a very low CPU / bandwidth cost for the advantages it offers. Furthermore, with a local crawler, you would have better control over what content gets indexed and what doesn't.

Grub has been featured on Slashdot. And currently has about 900 registered clients but only a small fraction of those are actually running.

Distributed computing is here. Now! The power of Open Source + idle CPU / bandwidth = next generation of software systems. Grub is there at the bleeding edge.

P.S. The mascot for Grub is officially "Grubby" the cute little worm.


Update: March 17, 2003 - The search engine "LookSmart" ( aquired for 1.3 million in cash and stocks according to CNET news.


Grub was Slashdotted (again) April 19, @10:15PM (2003)

Grub (?), v. i. [imp. & p. p. Grubbed (?), p. pr. & vb. n. Grubbing ().] [OE. grubbin., cf. E. grab, grope.]


To dig in or under the ground, generally for an object that is difficult to reach or extricate; to be occupied in digging.


To drudge; to do menial work.



© Webster 1913.

Grub, v. t.


To dig; to dig up by the roots; to root out by digging; -- followed by up; as, to grub up trees, rushes, or sedge.

They do not attempt to grub up the root of sin. Hare.


To supply with food.




© Webster 1913.

Grub, n.

1. Zool.

The larva of an insect, especially of a beetle; -- called also grubworm. See Illust. of Goldsmith beetle, under Goldsmith.

Yet your butterfly was a grub. Shak.


A short, thick man; a dwarf.




Victuals; food.



Grub axaxe, a kind of mattock used in grubbing up roots, etc. -- Grub breaker. Same as Grub hook (below). -- Grub hoe, a heavy hoe for grubbing. -- Grub hook, a plowlike implement for uprooting stumps, breaking roots, etc. -- Grub saw, a handsaw used for sawing marble. -- Grub Street, a street in London (now called Milton Street), described by Dr. Johnson as "much inhabited by writers of small histories, dictionaries, and temporary poems, whence any mean production is called grubstreet." As an adjective, suitable to, or resembling the production of, Grub Street.

I 'd sooner ballads write, and grubstreet lays. Gap.


© Webster 1913.

Log in or register to write something here or to contact authors.