Why Do Most Linux Distributions Use LiLo?
sPaKr asks: "Why do we still use LiLo? I have recently installed FreeBSD, and and the boot loader that comes with latest release seems very powerful: it allows me to navigate the disk, preload kernels and modules at boot time and if I make kernel changes but forget to make changes to the loader configuration file I can still boot into a stable system (even though this can be fixed by having a handy boot disk aka tomsrtbt). I have conducted a quick search and find that there are several replacement loaders for Linux, (ie. grub, uniload). Why is it that most distributions ship with LiLo when we can find stable and more feature-rich replacments?"
Personally, I love XOSL. It's a graphical bootloader with resolutions up to 1600x1200 - and can boot most file systems (it can't do reiser - Or it couldn't when I last tried it but has no problems on Ext2 etc...). You can put passwords on partitions, and I like that one can boot off floppy.
I mastered lilo early in my linux-using days. However, recently I looked at grub on my debian-unstable box and found it to be highly superior to lilo.
;)
/dev/hda1 in /boot/vmlinuz)
1) grub can look inside filesystems (much like the freebsd loader you talked about, of which I have no experience with)
2) grub gives you a command line: almost a shell, with tab-completion of filenames and devices, and a featureful list of operations you can perform, many of which I have not learned yet
3) grub has a built in menu system to boot from: it is quite easy to set up a boot menu with grub, even with colors (ooh)
4) grub, as of the last time I checked (recently), could see inside fat, ext2, and ffs. I'm sure support for more is on the way.
5) grub is an official part of the GNU Project.. now we know it can't get better than that!
One of my favorite things to do with grub is make a boot disk with it (directions in the documentation) Thus you can pop a disk in and boot any OS on the computer, boot sector or no..
I wish that Debian would change to grub as the default bootloader. I haven't touched lilo since I started using grub. Mandrake installs grub by default (as of 7.0 I believe.. I only watched a friend installing it). I'm not aware of any other distro using grub.
booting linux using grub:
(at the grub command line, assuming your kernel is on
# kernel (hd0,0)/boot/vmlinuz
# boot
grub is the way to world peace. All other bootloaders are only mild attempts to be like grub! grub IS THE STANDARD BOOT LOADER! THE STANDARD! (ref. 'ed is the standard text editor')
According to gnu.org, grub is still alpha quality software, not recommended for production systems.
Wasn't RedHat recently raked over the coals for including alpha-quality software in it's distribution? To my mind at least, this isn't much different.
As for the others, I'm gonna check out XOSL ... not that lilo isn't working for me, but I've just gotta play with stuff until it breaks ...
The fact that no one understands you doesn't mean you're an artist.
the only thing lilo handles better than grub is software raid partitions. as it stands, grub can't boot those. when that feature is in place, we should see more distros (at least debian from what i hear) using grub by default.
--
I forgot to mention Milo. the MiniLoader is for Alpha linux (I also happen to own a alpha). Milo is alow a much better loader then lilo. Milo gets you the most important part of grub, being able to navigate partions to find a kernel, then boot the kernel. What about a X86 Port of milo, sure as stop gap until grub is more stable. I dont know what the best loader is, but I do know it isnt Lilo, the next time I see a "LI" hanging promp , that boot block is going to get UpGraded!
I understand what you mean. I have to use a boot disk for LiLo (sharing drive with Win2000) and it's slooooowww. If I were able to pick and choose kernel modules at startup via floppy...then I think I'd be ok.
--
"Marv! They killed Reagan!" - Jimmy Carter
I would guess most distributions use LILO by default because that's what most of the documentation is written for, and what's been used as the defacto standard since the olden days of slack and redhat. I personally used CHOS with my debian box, because it was very easily customized and had a gui customizer to boot, and LILO would only do the LI and stop for some reason.
cheese logs keep my wang warm at night.
Most of us, I would guess, just need the choice to boot Linux, Windows, and maybe something else. We don't need more features to mess up our system.
Lilo is the ultimate in simplicity. Ideally you do not want a graphical boot loader that may or may not tell what is wrong in the event of a problem with your mbr. I edit /etc/lilo.conf point it off to as many kernel and root volumes as I desire and also without the worry of what to do if I want to boot another distro or os. Also if something goes wrong its easy to pop in a boot disk edit lilo.conf, update the boot loader and restart. It isn't nearly that easy in sun's x86 bootloader, freebsd or windows. Just because it isn't as visually stimulating doesn't mean it isn't as robust. Bells and whistles don't count for squat.
Grub is incredibly powerful for a free boot loader. My favorite feature is the lack of a 1024-Cylinder limit (opposed to lilo). Lilo wouldn't work on my machine at all. Grub also allows users to edit the commands at boot, so you can switch to older and different kernels whenever you need to. It's Lovely.
If you're not part of the solution, you're part of the precipitate.
No excellent soul is exempt from a mixture of madness. --Aristotle
I'm serious.
LiLo executes once every 50 to 180 days for me. It ain't pretty but who cares? It's there, it works and I never have to touch it. It has been in production on some of my systems for nearly three years.
If I was installing a new system and I knew someone who had orgasimed over something other than LiLo, I might look at it. But probably not. LiLo works.
Something that works beats something that is cool nine times out of ten.
InitZero
Not to sound like a troll here, but if your computer manages to boot, what does it matter what bootloader is on there? Granted, that's a 'this is the way we have always done it' answer, but seriously, I don't reboot unless the power goes out, and the power company here is relatively stable. I've got lilo configured and working, and my system boots up just fine, and if I do need to do a kernel upgrade I just add a new kernel and map to /boot, edit lilo.conf (copying the existing lines and changing what little needs to be changed), liloing it, and reboot. It's not rocket science here, and while better ones may exist, I'm not going to waste time changing to one, when it already works. I'd rather see linux coders work with more trippy stuff like USB and Firewire and Video drivers and that sort of thing than lilo... It's not "perfect", but it works quite well.
"Titanic was 3hr and 17min long. They could have lost 3hr and 17min from that."
IBM had PL/1, with syntax worse than JOSS,
And everywhere the language went, it was a total loss...
To quote Chris Rock " You can drive a car with your feet, it doesnt mean its to be done". Sure Lilo Works, but my biggest drawback is that you must have the choosen before you boot. Lets say You have only one machine ( yes some people are poor ) and its older, so the floopy drive is terriably unreilable (most are). So you download the latest and greatest kernel, compile it and copy it to /boot, well then you do something stupid and remove your old kernel option, and Replace it with the new kernel. And lets say You having a very bad day and you compile the kernel lets say without ATA/IDE support. Now You reboot, try and load the new kenrel, oops no root disk. Your screwed. Well whipout your boot floopy, wait this floppy hasnt been used in 18months, blowing the dust of it, hoping for the best, Ooopy is dead. So now I have this boot loader, and if I coud ONLY point it to a kernel at boot instead of before boot, then everything would be cool, Becouse my old kernel is sitting on the HD, ready to bring the system back to life but There isnt a lilo option for it. In freebsd, I never have to worry about needing a boot disk, the loader will load any kernel on the file system. This is a bigger problem your using a machine that doesnt other devices to boot from then a HD, Such as some laptops or smaller devices.
Admittedly, LILO is just a boot loader and does not affect the overlying operating system and software. BUT, I think there's a "because we've always done it that way and that's what (we think) our customers expect" attitude among the vendors, not terribly unlike why Microsoft still builds operating systems on top of DOS.
Give me my freedom, and I'll take care of my own security, thank you.
GRUB came pre-installed on my Caldera OpenLinux 2.4 distro. For some reason, it wouldn't boot BeOS 5 PE, which was in its own partition. I switched to lilo, and it has worked perfectly since. It even uses the same graphical dumbed-down display as GRUB.
The lba32 feature was added to lilo in version 21.3, released on Feb 24 2000.