With the advent of Ubuntu , many people began to approach the Linux world for the first time. There are several reasons that have led this distribution to success, including the simplicity of installation and the excellent mechanism of automatic hardware detection. For those who want to complicate a little life but at the same time learn something new must for a moment put aside Ubuntu 😉 and begin to build their own Linux distribution ... "from scratch" .
Linux From Scratch is a guide book written in the first version by Gerard Beekmans and later expanded by several of his collaborators present throughout the world. By following the instructions in the book more or less faithfully, you can build your own Linux distribution from scratch by manually compiling the kernel source code and all the sources of all the packages needed to operate the system.
Let me formulate the question better,
There are several answers to this question . Personally, the main reason that pushed me to "build" my LFS system a few years ago was to actually see how a GNU / Linux system works . Building an LFS system allows us to understand how certain things work together and depend on others. At the end of all the work, a user who builds his system, will know how it is done in every part and will be able to manually customize the various parts of the system.
Before starting this adventure, you need to know two things. The first is that it will take you a while to see your working LFS system. The time will be mainly due to the compilation of the packages (lower if you have a fairly powerful computer). The second is that once you have finished LFS, there is ... BLFS . LFS allows you to build the basic system. So the kernel is absolutely necessary to make the shell run. With BLFS, Beyond Linux From Scratch , you compile the rest, then graphical interface and various applications. In conclusion, I can say that LFS was an experience that came back to me very useful. Going back I would definitely repeat it 😉 Good compilation!