LFS 4.0 Released
Tekmage writes "For those of you who have never had the pleasure of rolling your own Linux install from scratch, take a moment to check out Version 4.0 of Linux From Scratch. Definitely for the techies amonst us, there is (IMHO) truly no better way out there to get down and dirty with the inner workings of our favorite OS." LFS organizes its documentation into "books"; 4.0's book is dated yesterday.
But if you need handholding, you really need it. On the other hand, if you're comfortable with using Linux, but want to know more about how it's put together, even Slackware is too high-level. LFS, on the other hand, is the ultimate Linux-learners tool, because it doesn't automate anything.
- Cron is not essential.
- Cron has historically been a security risk. What's the patch level on Vixie-Cron?
:-)
- Cron packages generally (there are exceptions) require a sendmail-like mail system for reporting
results. Sendmail (and even its not so
cumbersome clones) isn't generally necessary
or even wanted.
All that said, there's a wide choice of crons you can install, just see the BLFS (Beyond Linux From Scratch) hints.To be fair though, knowing which patches can and should be applied to particular versions of particular packages is not very useful, long term knowledge. Most of the patches installed by Gentoo are bugfix patches, which are *really* short lived. The occasional feature enhancement patch is relevant longer, but not too much longer. Same with the where to download and what to download. The learning experience of LFS basically boils down to knowing *every* dependency in your system, and how to manually configure every package (though that configuration step is not taken care of in gentoo). The dependency knowledge is of dubious value, as that too is subject to change in the details. All gentoo does is hide the nitty-gritty of requisite packages and keeps you from having to know every dependency. I did a Linux from scratch before (before the 'official' LFS existed, played it by ear), and it really doesn't teach you much that you don't learn in time with distributions. The useful knowledge is how to *use* the applications, not install them.
XML is like violence. If it doesn't solve the problem, use more.
My current LFS install (3.3) has LFS installed in the default places, and everything else created after LFS in /opt in its own directory. The files are symlinked into their respective directories in /opt, and are uninstalled by reading the list of files in the /opt/foo/* directories. I can then rm -r the directory and uninstall the package.
My next installation is moved towards installing the core in /usr/lfs and /lfs and symlinking out from there.
This keeps me in check with the program version and what is installed with a simple ls. The only time I've had to use a package manager is to install Glide (I couldn't compile Glide, so I had to use RPM).
I Support Fair Use
Although the LFS folks have been making the claim of an 8 or 5 meg installation, I've yet to see any clear docs on how to do it. I'd like to.
That's because you need to learn it yourself. :-)
Honestly though, I personally have a LFS-based firewall system (kernel+netfilter+ipsec+ssh+snmp+ntp+vim+perl (yes perl)) that fits in to an 8M CompactFlash card. Now I use 16M cards and add a 3M boot/config partition with grub, but making small linux distros is dead simple with uClibc and busybox (both are in the LFS hints).
The basic recipe is to use uclibc and busybox, optimize for size (-Os), strip everything you can and once all of that is done, go through and remove any unnecessary libraries and files. Big hint: you don't need documentation on small distros.