Linux From Scratch
Linux From Scratch
Versión 4.0
Gerard Beekmans
Copyright © 1999−2002 por Gerard Beekmans
Traducido por el proyecto LFS−ES http://www.escomposlinux.org/lfs−es
Versión de la traducción: FINAL (Revisada) del 13 de octubre de 2002
Este libro describe el proceso para la creación de un sistema Linux desde cero, usando solamente las fuentes
del software necesario.
Copyright (c) 1999−2002, Gerard Beekmans
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
•
•
•
Redistributions in any form must retain the above copyright notice, this list of conditions and the
following disclaimer.
Neither the name of "Linux From Scratch" nor the names of its contributors may be used to endorse
or promote products derived from this material without specific prior written permission.
Any material derived from Linux From Scratch must contain a reference to the "Linux From Scratch"
project.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Linux From Scratch
1
Dedicatoria
Este libro está dedicado a la querida esposa de Gerard Beekmans, Beverly Beekmans.
Índice
Prólogo
Prefacio
Quién puede querer leer este libro
A quién puede que no le interese leer el libro
Organización
Parte I − Introducción
Parte II − Instalación del sistema base LFS
Parte III − Apéndices
I. Parte I − Introducción
1. Introducción
Agradecimientos
Lo que vamos a hacer
Convenciones utilizadas en este libro
Versión del libro
Servidores alternativos
Historial de modificaciones
Listas de correo y archivos
Servidores de noticias
FAQ
Información de contacto
2. Información importante
Sobre $LFS
Sobre los SBUs
Dónde almacenar los programas descargados
Cómo instalar los programas
¿Qué plataforma?
Cómo buscar ayuda
II. Parte II − Instalando el sistema LFS
3. Paquetes que hay que descargar
Introducción
Paquetes que hay que descargar
4. Preparando una nueva partición
Introducción
Creando una nueva partición
Creando un sistema de ficheros en la nueva partición
Montando la nueva partición
5. Preparando el sistema LFS
Introducción
¿Por qué usamos enlazado estático?
Creando el directorio $LFS/static
Instalando todos los programas como usuario sin privilegios
Instalando Bash−2.05a
Instalando Binutils−2.13
Instalando Bzip2−1.0.2
Instalando Diffutils−2.8.1
Dedicatoria
2
Linux From Scratch
Instalando Fileutils−4.1
Instalando Findutils−4.1
Instalando Gawk−3.1.1
Instalando GCC−3.2
Instalando Grep−2.5
Instalando Gzip−1.2.4a
Instalando Make−3.79.1
Instalando Patch−2.5.4
Instalando Sed−3.02
Instalando Sh−utils−2.0
Instalando Tar−1.13
Instalando Texinfo−4.2
Instalando Textutils−2.1
Instalando Util−linux−2.11u
6. Instalando los programas del sistema base
Introducción
Sobre los símbolos de depuración
Entrando al entorno chroot
Cambiando el propietario
Creando directorios
Montando el sistema de ficheros /proc
Creando el enlace simbólico /etc/mtab
Creando los enlaces simbólicos bash y sh
Creando los ficheros de contraseñas y grupos
Creando los dispositivos (Makedev−1.7)
Instalando Linux−2.4.19
Instalando Man−pages−1.52
Instalando Glibc−2.2.5
Instalando GCC−3.2
Instalando Zlib−1.1.4
Instalando Findutils−4.1
Instalando Gawk−3.1.1
Instalando Ncurses−5.2
Instalando Vim−6.1
Instalando Bison−1.35
Instalando Less−374
Instalando Groff−1.18
Instalando Textutils−2.1
Instalando Sed−3.02
Instalando Flex−2.5.4a
Instalando Binutils−2.13
Instalando Fileutils−4.1
Instalando Sh−utils−2.0
Instalando Gettext−0.11.5
Instalando Net−tools−1.60
Instalando Perl−5.8.0
Instalando las páginas de manual de los hilos de Linux (linuxthreads−2.2.5)
Instalando M4−1.4
Instalando Texinfo−4.2
Instalando Autoconf−2.53
Instalando Automake−1.6.3
Dedicatoria
3
Linux From Scratch
Instalando Bash−2.05a
Instalando File−3.39
Instalando Libtool−1.4.2
Instalando Bin86−0.16.3
Instalando Bzip2−1.0.2
Instalando Ed−0.2
Instalando Kbd−1.06
Instalando Diffutils−2.8.1
Instalando E2fsprogs−1.27
Instalando Grep−2.5
Instalando Gzip−1.2.4a
Instalando Man−1.5k
Instalando Lilo−22.2
Instalando Make−3.79.1
Instalando Modutils−2.4.19
Instalando Netkit−base−0.17
Instalando Patch−2.5.4
Instalando Procinfo−18
Instalando Procps−2.0.7
Instalando Psmisc−21
Instalando Shadow−4.0.3
Instalando Sysklogd−1.4.1
Instalando Sysvinit−2.84
Instalando Tar−1.13
Instalando Util−linux−2.11u
Instalando LFS−Bootscripts−1.10
Configurando los programas esenciales
7. Preparando los guiones de arranque
Introducción
¿Cómo hacen estos guiones que funcione el proceso de arranque?
Configurando el guión setclock
¿Necesito el guión loadkeys?
Configurando el guión sysklogd
Configurando el guión localnet
Creando el fichero /etc/hosts
Configurando el guión network
8. Haciendo el sistema LFS arrancable
Introducción
Creando el fichero /etc/fstab
Instalando Linux−2.4.19
Haciendo el sistema LFS arrancable
9. El final
El final
Registrarse
Arrancando el sistema
III. Parte III − Apéndices
A. Descripción de paquetes y dependencias
Introducción
Autoconf
Automake
Bash
Dedicatoria
4
Linux From Scratch
Bin86
Binutils
Bison
Bzip2
Diffutils
E2fsprogs
Ed
File
Fileutils
Findutils
Flex
Gawk
GCC
Gettext
Glibc
Grep
Groff
Gzip
Kbd
Less
LFS−Bootscripts
Libtool
Lilo
Linux (el núcleo)
M4
Make
MAKEDEV
Man
Man−pages
Modutils
Ncurses
Netkit−base
Net−tools
Patch
Perl
Procinfo
Procps
Psmisc
Sed
Shadow
Sh−utils
Sysklogd
Sysvinit
Tar
Texinfo
Textutils
Util−linux
Vim
Zlib
B. Recursos
Introducción
Dedicatoria
5
Linux From Scratch
Libros
CÓMOs y Guías
Otros
Dedicatoria
6
Prólogo
Prefacio
Después de haber usado diferentes distribuciones de Linux, nunca estuve satisfecho con ninguna de ellas. No
me gustaba la forma en la que estaban organizados los guiones de arranque, o no me gustaba la configuración
por omisión de ciertos programas, y cosas por el estilo. Llegué a darme cuenta de que si quería estar
completamente satisfecho con algún sistema Linux, tenía que construir el mío propio desde cero, usando,
idealmente, sólo el código fuente. Sin utilizar paquetes precompilados de ninguna clase. Sin la ayuda de un
CD−ROM o disco de arranque que instalase utilidades básicas. Utilizaría mi sistema Linux actual para
construir el mío por mi cuenta.
Esta, en su momento, idea descabellada se presentó muy difícil y algunas veces casi imposible. Después de
sortear toda clase de problemas de dependencias, de compilación, etc., creé un sistema Linux hecho a medida
y completamente funcional. Llamé a este sistema LFS, que significa Linux From Scratch (Linux desde Cero).
¡Espero que paséis buenos momentos trabajando en vuestro LFS!
−−
Gerard Beekmans
[email protected]
Quién puede querer leer este libro
Existen muchas razones por las que alguien podría querer leer este libro. La principal razón es instalar un
sistema LFS. La pregunta que mucha gente podría hacer es "¿Por qué pasar por todo el embrollo de instalar
manualmente un sistema desde cero cuando te puedes limitar a descargar una distribución ya existente?". Es
una buena pregunta.
Una importante razón para la existencia de LFS es enseñar a la gente cómo trabaja internamente un sistema
Linux. Construir un sistema LFS ayuda a demostrar lo que hace que Linux funcione, cómo trabajan juntas las
distintas partes, y cómo unas dependen de otras. Y quizás lo más importante, cómo adaptarlo a tus propios
gustos y necesidades.
Uno de los beneficios claves de LFS es que tienes el control de tu sistema sin tener que confiar en la
implementación de Linux de nadie. Con LFS estás en el asiento del conductor y puedes dictar cada aspecto de
tu sistema, como la estructura de directorios y la configuración de los guiones de arranque. También podrás
decidir dónde, por qué y cómo se instalan los programas.
Otro beneficio de LFS es que puedes crear un sistema Linux verdaderamente compacto. Cuando instalas una
distribución normal, acabas instalando muchos programas que, probablemente, nunca usarás. Sólo están ahí
gastando (precioso) espacio de disco. No es muy difícil conseguir un sistema LFS instalado en menos de 100
MB. ¿Todavía te parece demasiado? Algunos de nosotros hemos estado trabajando para crear un sistema LFS
embebido realmente pequeño. Hemos instalado un sistema que contiene lo suficiente para ejecutar un servidor
web Apache; el espacio total de disco usado fue, aproximadamente, 8 MB. Con un repaso adicional para
reducirlo, se podría llegar a 5 MB o menos. Intenta eso con una distribución normal.
Prólogo
7
Linux From Scratch
Podríamos comparar una distribución de Linux con una hamburguesa que compras en un restaurante de
comida rápida. No tienes idea de lo que te estás comiendo. En cambio, LFS no te da una hamburguesa, sino la
receta para hacer la hamburguesa. Te permite revisarla, eliminar los ingredientes no deseados, y añadir tus
propios ingredientes para mejorar el sabor de tu hamburguesa. Cuando estés satisfecho con la receta entonces
empiezas a prepararla. Ahora tienes la oportunidad de cocinarla a tu gusto: asarla, cocerla, freírla, hacerla a la
barbacoa, o comerla cruda.
Otra analogía que podemos usar es comparar a LFS con una casa terminada. LFS te dará los planos de la casa,
pero tú debes construirla. Tienes libertad para adaptar los planos como quieras.
Otra ventaja de un sistem
Comentarios de: Linux From Scratch (0)
No hay comentarios