Linux From Scratch

Linux From Scratch o LFS es un tipo de instalación del sistema operativo GNU/Linux y el nombre de un libro escrito por Gerard Beekmans junto a otros. 
El libro es una colección de documentos que indican los pasos para desarrollar un sistema GNU/Linux desde cero, a partir del código fuente. El libro Linux From Scratch está disponible en línea en el sitio oficial y actualmente su versión es la 11.1.

Para mantener LFS pequeño y simple, el libro Beyond Linux From Scratch (BLFS) fue creado para presentar las instrucciones de como desarrollar un sistema básico GNU/Linux después de crear LFS. Introduce y guía al lector de como agregar al sistema LFS la conexión de red, X, sonido, soporte de impresora y escáner. Desde el lanzamiento 5.0, la versión del libro BLFS corresponde con la misma versión del libro LFS.

Además de los libros LFS y BLFS, está el libro Cross Linux from Scratch que describe la compilación cruzada y Hardened Linux From Scratch que hace hincapié en la seguridad tal como la protección de Stack-smashing, PaX y Address space layout randomization usando grsecurity. Cross Linux from Scratch provee las instrucciones necesarias para desarrollar una distribución Linux base y de línea de comandos solamente. Mientras LFS se limita a la arquitectura x86, CLFS soporta gran variedad de procesadores. CLFS tiene técnicas avanzadas que no se incluyen en el libro LFS tal como el toolchains para el desarrollo cruzado, soporte multibiblioteca (bibliotecas 32 bit y 64 bit), y un conjunto de instrucciones alternativo tal como para x86-64, Itanium, SPARC, MIPS, y Alpha. Hardened Linux From Scratch se especializa en la creación de una versión más segura que el que se puede lograr con el original Linux From Scratch , y sirve para sistemas embebidos.

Linux From Scratch es una forma de instalar un sistema GNU/Linux desarrollando todos los componentes manualmente. Esto es, naturalmente, un proceso más largo que instalar una distribución Linux precompilada. De acuerdo al sitio de Linux From Scratch, las ventajas de este método son un sistema compacto, flexible y seguro y proporciona gran conocimiento de como funciona un sistema operativo GNU/Linux.

Software requerido por LFS 
El software siguiente es requerido en LFS versión 7.2:

 Autoconf 2.69
 Automake 1.12.3
 Bash 4.2
 Binutils 2.22
 Bison 2.6.2x86-64
 Bzip2 1.0.6
 Coreutils 8.19
 DejaGNU 1.5
 Diffutils 3.2
 E2fsprogs 1.42.5
 Expect 5.45
 File 5.1
 Findutils 4.4.2
 Flex 2.5.37
 Gawk 4.0.1
 GCC 4.7.1
 GDBM 1.10
 Gettext 0.18.1.1
 Glibc 2.16.0
 GMP 5.0.5

 Grep 2.14
 Groff 1.21
 GRUB 2.00
 Gzip 1.5
 Iana-Etc 2.30
 Inetutils 1.9.1
 IPRoute2 3.5.1
 Kbd 1.15.3
 Less 444
 LFS-Bootscripts 20120901
 Libpipeline 1.2.1
 Libtool 2.4.2
 Linux 3.5.2
 GNU m4 1.4.16
 Make 3.82
 Man-DB 2.6.2
 Man-pages 3.42
 MPC 1.0
 MPFR 3.1.1
 Ncurses 5.9

 Patch 2.6.1
 Perl 5.16.1
 Pkg-config 0.27
 Procps 3.2.8
 Psmisc 22.19
 Readline 6.2
 Sed 4.2.1
 Shadow 4.1.5.1
 Systemd 188
 Sysklogd 1.5
 Sysvinit 2.88dsf
 Tar 1.26
 Tcl 8.5.12
 Time Zone Data 2012e
 Texinfo 4.13a
 Udev-lfs Tarball 188
 Util-linux-ng 2.21.2
 Vim 7.3
 XZ Utils 5.0.4
 Zlib 1.2.7

El siguiente software es incluido en CLFS versión 1.1.0. Estos soportan varias arquitecturas.

 Autoconf 2.61
 Automake 1.10.1
 Bash 3.2
 Bash Documentation 3.2
 Bin86 (x86_64 non-multilib only)
 Binutils 2.18
 Bison 2.3
 Bzip2 1.0.4
 CLFS-Bootscripts 1.0pre10
 Coreutils 6.9
 DejaGNU 1.4.4
 Diffutils 2.8.7
 E2fsprogs 1.40.4
 Elftoaout 2.3 (Sparc and Sparc64 only)
 Expect 5.43.0
 File 4.23
 Findutils 4.2.32
 Flex 2.5.35
 Gawk 3.1.6
 GCC 4.2.4
 Gettext 0.17
 Glibc 2.7

 Grep 2.5.3
 Groff 1.19.2
 GRUB 0.97
 Gzip 1.3.12
 Hfsutils 3.2.6 (PowerPC and PowerPC64 only)
 Iana-Etc 2.20
 Inetutils 1.5
 IPRoute2 2.6.23
 Kbd 1.13
 Less 418
 LILO 22.8 (x86_64 non-multilib only)
 Libtool 1.5.26
 Linux 2.6.24.7
 GNU m4 1.4.10
 Make 3.81
 Man 1.6e
 Man-pages 3.01
 Mktemp 1.5
 Module-Init-Tools 3.4
 Ncurses 5.6
 Parted 1.8.8 (PowerPC and PowerPC64 only)
 Patch 2.5.9

 Perl 5.8.8
 PowerPC Utils 1.1.3 (PowerPC and PowerPC64 only)
 Procps 3.2.7
 Psmisc 22.6
 Readline 5.2
 Sed 4.1.5
 Shadow 4.1.2
 Silo 1.4.13 (Sparc and Sparc64 only)
 Sysklogd 1.5
 Sysvinit 2.86
 tar 1.20
 Tcl 8.4.16
 Texinfo 4.11
 Tree 1.5.1.1
 Udev 124
 Util-linux-ng 2.14
 Vim 7.1
 Vim 7.1 language files (optional)
 Yaboot 1.3.13 (PowerPC and PowerPC64 only)
 Zlib 1.2.3

Referencias

Véase también 

 Linux
 Sorcerer Linux
 Source Mage
 Lunar Linux
 Gentoo Linux
 Script T2

Enlaces externos
 Sitio oficial de LFS
 Sitio oficial de LFS en español

Distribuciones Linux basadas en el código fuente