Thanks! -----Original Message----- From: Gerard Beekmans [mailto:[EMAIL PROTECTED]] Sent: Monday, February 10, 2003 7:55 PM To: [EMAIL PROTECTED] Subject: Re: (clug-talk) learning Linux - from scratch? ;-)
On February 10, 2003 04:18 pm, you wrote: > What's the best way to get to know a Linux system intimately? LFS, > User-Mode Linux, HOWTOs, combination thereof? Opinions welcome, including > blatant self-promotion. ;-) Well since you allow blatant self-promotion, allow me. I'm of course biased as linux from scratch is my own project. Let me paste an introductionary file what LFS is all about. It's not online yet, still in draft phase and being revised. No spell or grammar checks have been done either, so excuse the bad language. Anyway, have a read. If you would like to get into more detail why I think LFS would suit your needs, I'd be happy to. Oh, do read all the HOWTOs you can. The LFS book doesn't teach you how to setup networks, or good programming habits or anything of the sort. It just sticks to explaining how to build a Linux system and ends there. ========= What is Linux From Scratch? Linux From Scratch, or LFS for short, is a term that encompasses a few things. LFS is a project, a book and a philosophy, some even refering to it as a way of life. The LFS project is about teaching people a different way of looking at Linux systems. Instead of purchasing or downloading an existing Linux system put together by a vendor (such as Redhat, Debian, Mandrake, Slackware and others), you put together your own Linux system by downloading the source code and compiling all the software yourself. What you end up with is not just another version of a Linux system, but a system that you know intimately. Since you installed everything, you know everything that goes on. There is nothing installed that you aren't familiar with, or don't know why it is installed. Compiling from source also has the additional benefit that you can optimize packages for your specific hardware. Because distributions are geared toward a very broad range of systems, their pre-compiled programs can't be too optimized. For instance, a lot of distribution these days optimize their programs for the i586 architecture, thus not taking advantage of the capabilities of the i686, pentium4 or the AMD architectures. Besides architecture optimizations, the GNU CC compiler also knows about code optimizations but they don't work on all types of hardware, so no distribution enables the more invasive and aggressive ones. Going the LFS route changes all this. You can experiment with different optimization settings to see which ones work best for you. Installing everything from source allows you to change the way packages get installed. This isn't very useful for the core packages since hardly anybody changes it, but when it comes to XFree86, QT, KDE, Apache, OpenOffice and other such packages, compiling manually enables you to fine tune the program and only compile the components you want. Besides compiler optimizations, you can also change the general feel of the system. Think about the directory layouts and bootscript implementations. They are hard to change on existing distributions because all the packages you install with their package manager rely on a specific bootscript setup, directory layout and program locations. Of course there are also disadvantages. One of the main disadvantages of the LFS approach is that it takes a lot of time to install and manage an LFS system. It's not a simple matter of running one command that updates your entire system with the latest patches and updates. You'll have to keep your system up-to-date manually. And some packages are very big and take many hours to compile. Let's get one thing straight: we're not saying that distributions are bad and that LFS is the only good thing out there. It is possible to change an existing distribution according to your taste, change its directory layout, bootscripts and recompile all its programs. It's probably a bit harder to do. If you take a distribution, take it apart and put it back together again with your own changes, recompile certain parts, you're doing what LFS is trying to teach people: how to build your own custom Linux system. The LFS book is just one means to an end. If you don't follow the LFS book, you could still end up with a system and call it an LFS based system. The LFS book just shows you one way of doing it. The book provides you with a set of packages that make up a basic Linux system and it tells you how to successfully compile them and in which order so all dependencies are satisfied properly. But in the end the LFS book is merely a well tested guideline that you can fall back on in case of trouble. It is not, however, a bible meant to be followed by the letter. -- Gerard Beekmans www.linuxfromscratch.org -*- If Linux doesn't have the solution, you have the wrong problem -*-
