Linux From Scratch is a project, or rather a book that teaches you step-by-step how to build your own Linux distribution entirely from the source code. The primary goal of LFS project is to educate people about the inner workings of a Linux system, rather than helping you create a usable Linux distro for your home use. You would be better off using some precompiled Linux distribution if you want to develop anything serious, but for learning LFS is perhaps the best way to do it.
To keep LFS small and focused, the book Beyond Linux From Scratch (BLFS) was created which presents instructions on how to further develop the basic Linux system that was created in LFS. It introduces and guides the reader through additions to the system including networking, X, sound, printer and scanner support. References to other documentation are made throughout the book but a basic understanding of Linux and it’s commands is required before you dive into this book.
Linux From Scratch Live CD (Image credit: The Coding Studio)
In addition to LFS and BLFS books, the Linux From Scratch project provides a number of resources to assist you in Linux building. The Cross Linux from Scratch describes cross compiling and Hardened Linux From Scratch focuses on security enhancements like use of Stack-smashing protection, PaX and Address space layout randomization using grsecurity. Cross Linux from Scratch provides the necessary instructions to build a base, command line only Linux distribution. The CLFS also addresses advanced techniques not included in the LFS book such as cross-build toolchains, multilibrary support and alternative hardware architectures such as x86-64, Itanium, SPARC, MIPS, and DEC Alpha. Hardened Linux From Scratch focuses on creating a more secure version of the original Linux From Scratch as its main purpose, including embedded systems.
Linux From Scratch also has a custom Live CD built specially to use as a platform to build your new Linux distro, so that you don’t have to mess your existing Linux installation. The Live CD includes all the necessary development tools and packages mentioned in the book.