Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Distribution: Slackware (mainly) and then a lot of others...
Lilo vs grub1 vs grub2
I just wanted to know what are your thoughts/opinions on lilo, grub1 and grub2.
I am a person who does _not_ like to mess around with bootloaders. It causes unnecessary migranes . I have repaired bootloaders though.
Lilo is good. Plenty of info available and if you are lucky you get the ncurses screen where you can take your time, read the questions and everything is fine.
Grub1 is simply awesome. The fact that it does not have a set of files to edit and there is no need to run any command makes it a very powerful tool. You can pass as many arguments as you like but it will boot up properly.
I have serious complains with grub2. Grub2 is not even of the caliber of lilo. The fact that I cannot edit a file as a root is something that makes me bay for blood. To top it you have to run some specific commands to update grub makes it even more unreliable to me.
To me it looks like a huge step backwards - unless something radically new comes in grub2.
If someone can set a poll we can express our ideas and views much better. But for now if you want to tell me why is _anything_ better than grub1 please let me know.
Thank you for your time.
I will just point to something, so that is a little more understandable what the differences between GRUB Legacy and GRUB 2 are;
GRUB Legacy is not actively developed any longer. Only bugfixes will be made so that we can continue using GRUB Legacy until GRUB 2 becomes stable enough. If you want more features in GRUB, it is a waste of time to work on GRUB Legacy, because we never accept any new feature. Instead, it is better to take part in the development of GRUB 2.
Compatibility for booting FreeBSD, NetBSD, OpenBSD, and GNU/Linux. Proprietary OS's such as Windows 9x/NT/2000/XP, and OS/2 are supported via a chain-loading function.
In addition to the requirements above, GNU GRUB Legacy has the following features:
Support multiple executable formats.
Support non-Multiboot OS's.
Load multiple modules.
Support a human-readable configuration file.
Flexible command-line interface.
Support multiple filesystem types.
Support automatic decompression.
Access data on any installed device.
Geometry translation independent.
Detect all installed RAM.
Support Logical Block Address (LBA) mode.
Download OS images from a network.
Support diskless systems.
Support remote terminals.
GRUB 2 is derived from PUPA which was a research project to investigate the next generation of GRUB. GRUB 2 has been rewritten from scratch to clean up everything for modularity and portability. A mailing list and a wiki have been setup for discussing the development of GRUB 2.
GRUB 2 targets at the following goals:
Scripting support, such as conditionals, loops, variables and functions.
Dynamic loading of modules in order to extend itself at the run time rather than at the build time.
Portability for various architectures.
Internationalization. This includes support for non-ASCII character code, message catalogs like gettext, fonts, graphics console, and so on.
Real memory management, to make GNU GRUB more extensible.
Modular, hierarchical, object-oriented framework for file systems, files, devices, drives, terminals, commands, partition tables and OS loaders.
Cross-platform installation which allows for installing GRUB from a different architecture.
Rescue mode saves unbootable cases. Stage 1.5 was eliminated.
Fix design mistakes in GRUB Legacy, which could not be solved for backward-compatibility, such as the way of numbering partitions.
Multiboot Specification is a protocol between a boot loader and an OS kernel. Because this specification is generic, you can use the protocol in your own boot loader and/or in your own OS freely. Follow this link, for more details.
I just decided to get back to Grub Legacy from Grub 2, because it is much easier to configure. I don't care if there is no active development, as long as it gets bugfixes. It has already all features I need, and for me the points
# Support a human-readable configuration file.
# Basic functions are easy for an end-user to use.
# Rich functionality for OS experts/designers.
Distribution: Slackware (mainly) and then a lot of others...
Yes, me too. I put in the legacy grub because it is less complicated.
Perhaps grub2 would be great someday but as of right now it is a mess. The fact that you cannot edit some files even as root bothers me a lot. With all the possible combinations of hardware available I do not think gurb would be able to deal with it all.
What I would look for (primarly) in grub2 is the ability to change things on the fly. My monitor can only support 800x600 and there is no way grub2 would be able to figure that out. Putting more configuration files is just going to complicate things further.
I think we are missing the *nix philosophy (one small program doing one thing properly) and we are asking the grub to do something more than it is designed to do.
The fact that legacy grub is not maintained is somehow saddening. It was an ugly looking loader but then it worked like there is no tomorrow .
I do not know why we are undertaking working on something that is actually working properly.
Are we 'fixing things until they break'?
I still use lilo. I have tried grub-legacy, but not grub2. I understand that pure 64 bit systems have a problem with grub2. I really just like the simplicity of lilo. However, I do believe that someday, grub2 may be the way to go.
I prefer grub-legacy. Even though it is not maintained anymore, it is still the default bootloader for several major distros and so is patched for security and extra features by them. I use a highly-patched version which combines all the available fixes and an eclectic mix of extra features from many distros.
There are two very good derivatives of grub-legacy. One is the one used for the 'Super Grub Disk'. The fellow who develops that (adrian15) was an upstream contrib to grub-legacy just as development stopped and now contributes (IIRC) to grub2, while still maintaining a grub-legacy version of SGD. The other derivative is grub4dos which is very actively maintained and extended with lots of useful features, like ntfs support ram-disk support. For my own use I patch standard grub-0.97 with a mix of patches from grub4dos and adrians version, on top of fix-patches from debian, suse, fedora, LFS and others.
The big drawback to grub-legacy is that it can't be compiled on a pure 64-bit system and it only works for intel systems. grub2 is/was supposed to be able to be used on other arches. The big problem with grub2 is that the development is following the same pattern as the hurd kernel -meaning it may still not be ready for primetime in 2020.