I’ve been spending the last few days getting some presearch (you know, pre-research) done for installing Linux from Scratch, and I’m slowly forming a rough mental checklist of what I need to do to install LFS. I’m a total newbie at LFS, and even Linux, so my list may be much longer than it would be for more experienced Linux users, but hey — we all start somewhere, right?
Get My Hardware Ready
I’ve found an old unused hard drive at work, a beautiful 2.1GB Seagate ST32122A (4500RPM, 12msec seek time, even a 128K cache!), which will make building LFS on Limited Edition much easier, since I don’t have to worry so much about toasting GRUB accidentally. Or toasting Limited Edition accidentally 😯 . I have no idea if it actually works, but I’m hoping so — I like putting old things to use in creative ways. If it fails, I guess I’ll either have to build LFS in Piggybacker or get a similarly old disk on eBay.
Do The Pre-Reading
(The preading?) There is a lot of pre-reading for me to do! I had no idea: this is a short list of the recommended reading and resources to scour before building LFS 6.7 (dates in brackets are of last known update):
- Advanced Bash-Scripting Guide: An in-depth exploration of the art of shell scripting by Mendel Cooper 
- Autoconf, Automake, and Libtool by Gary V. Vaughan 
- Building and Installing Software Packages for Linux by Mendel Cooper 
- DistroWatch (not really recommended reading, but can help you choose a distro to build LFS from)
- Emacs (compile it from source as a training exercise — or do MPlayer if you’re a masochist)
- GRUB (the GRand Unified Bootloader — a great and versatile bootloader)
- How to Ask Questions the Smart Way by Eric S. Raymond 
- IBM developerWorks: Linux (tutorials and other resources from IBM on Linux)
- The LFS FAQ 
- LFS LiveCD Documentation 
- LILO mini-HOWTO by Miroslav “Misko” Skoric (the LInux LOader — another common bootloader) 
- The Linux Documentation Project (contains vast amounts of useful information on Linux; hosts many of the documents listed here)
- Linux Installation and Getting Started by Welsh, et al 
- Linux Network Administrator’s Guide, Second Edition by Olaf Kirch and Terry Dawson 
- The Linux System Administrator’s Guide by Wirzenius, et al [2003?]
- The Linux User’s Guide by Larry Greenfield (sources here) 
- The Unix and Internet Fundamentals HOWTO by Eric S. Raymond 
I put together this list because there’s not really any single page that links to good resources for building a single-boot Intel x86 LFS — but now there is! Let me know if I missed something or if there’s newer versions available, and I’ll add it here.
Here’s some further links for the adventurous multi-booters-to-be:
- Boot + Root + Raid + Lilo : Software Raid mini-HOWTO by Michael Robinton 
- Linux+Win9x+Grub HOWTO by Joel Rosen 
- Linux+WindowsNT mini-HOWTO by Miroslav “Misko” Skoric 
- Multiboot with GRUB Mini-HOWTO by Ivan Kanis 
- Win95 + WinNT + Linux multiboot using LILO mini-HOWTO by Renzo Zanelli 
And here’s some links to some major hosts of free software source code:
By no means are any of these meant to be exhaustive — they are basically a jumpstart for my fellow LFS newbies. If I find more interesting or valuable material, I’ll post about it on BG, too, so keep an eye out in coming weeks.
Practice Building Packages
It’s not all about reading: no, LFS is all about getting your hands dirty, too, so I’ll be building software from source many times before I actually move on to LFS. Emacs is recommended, as it’s both useful and well-traversed software. I’ll keep an eye out in coming weeks for other good packages to practice building, too.
Choose An LFS Build Distro
The Linux Mint 9 KDE / Kubuntu 10.10 hybrid that Limited Edition is running isn’t up to the task of building LFS. I can install all of the required packages, but many of them are too recent for LFS 6.7 to have adjusted, and beyond that, I’d rather not mess up my current install any further 😛 . So rather than downgrading my packages and crossing my fingers, I’ll just use a live CD. I may use a normal distro, but LFS highly recommends using the LFS LiveCD to build a LFS system from, and I’m inclined to do just that.
Read The LFS Book — Repeatedly!
Then once I’ve done all that prepwork, I will inhale the LFS Book until I know it backwards and frontwards and sideways.
Take A Deep Breath… And Begin
And then I’ll start building LFS 🙂 . From my cursory searches, it seems that getting a working LFS build the first time around takes about a week, but it is possible to have a ready LFS system in a few hours time, if the RNG is on your side.
The reason I’ve slated so much prepwork is twofold: First, I want to take my time with this, because my goal is not just to rush to have a working LFS build, but also to understand as much as I can about Linux underpinnings in general; and second, I want the actual build process to be as painless as possible when the time actually comes. Besides, documenting the process is what this blog is all about!