LFS: Una experiencia desde 0 ( ó desde 3)

Durante el mes de febrero me la pase creando un sistema LFS, el tercero en mi cuenta. Un sistema LFS no es otra cosa que un sistema linux totalmente creado desde las fuentes, esto es, bajando los paquetes source.tar.{gz,bz2}, descomprimiendo y aplicando los comandos de compilacion (make, configure, autoconf, automake, etc). Para crear un sistema asi se toman 3 grandes pasos:

  1. Crear un entorno de desarrollo, llamado en el libro tool-chain
  2. Desarrollar el sistema
  3. Extender el sistema

El paso 3 es algo que esta por demas explicar ya que eso depende de cada usuario y los fines que vaya a recibir el sistema.

El paso 1 es quiza el mas interesante en lo que es el desarrollo de nuestro sistema ya que aqui necesitamos compilar todas las herramientas necesarias para compilar, valgase la redundancia, y nos damos cuenta donde va cada pieza y como se deben de unir. Uno podria pensar que lo primero es hacerce de un compilador, lo cual no es del todo cierto. Lo primero que debe uno hacer es valerse de las archivos mas basicos como son las librerias de C y las cabeceras del kernel para que todo corra sobre una version estandar, recordando que las librerias de C hacer que todo el codigo compilado en C (la gran mayoria) pueda funcionar con las librerias standar. Seguido a este ya podemos continuar con el compilador y las utilerias de linux, luego mas herramientas para el proceso como make, autotools, perl, sed, awk, etc. Todas las herramientas que se necesitan para compilar un paquete y que deberiamos tener siempre a mano junto con una buena referencia ya que por algo son el sistema basico que se necesita para compilar todo lo demas. Como tip interesante de esta parte esta el checar la configuracion de algunos archivos especiales como son las referencias creadas con ln, ya que estas podrian traer algunas complicaciones a futuro y tratar de compilar gcc varias veces para estar seguros de que todo vaya bien. Para la compilacion bootstrap (si la memoria me trabaja bien se debe llamar algo asi) de GCC, se hacen tres compilaciones, la primera compilacion sirve para compilar la segunda y la tercera y estas a su vez se comparan para ver que terminen igual y saber que fue una compilacion satisfactoria.

El paso 2 es muy interesante, aqui debemos volver a armar la tool-chain para compilar de forma nativa nuestro nuevo sistema y poder eliminar el sistema anterior de compilacion, el cual es un paso intermedio entre el sistema operativo que usamos y el que queremos crear. Aqui lo importante esta en pensar que queremos usar y que no. Para no terminar odiando las dependencias lo mejor es compilar todo al pie de la letra y perzonalizar despues, aunque una persona muy habil puede (y estoy haciendo xD) realizar modificaciones a este sistema basico que tenemos. Los dos tips mas grandes que puedo proporcionar son: Revisar la configuracion del kernel, la parte mas fragil del sistema, y la localizacion para los que hablamos español, ya que esto da terribles dolores de cabeza. Despues de eso ya tenemos un sistema base para extenderse. El mio hasta el momento tiene un gestor de terminales, algo parecido a lo que es un gestor de ventanas, solo que en vez de aplicaciones graficas tengo puras terminales moviendose por todos lados ( lo se, muy nerd pero asi me gusta), un cliente msn de terminal, porque claro, la parte social ayuda mucho a sentirse realizado, y 2 navegadores web de consola, lynx y links, porque cada uno tiene lo suyo y los tengo abiertos en dos terminales separadas para poder jugar con gusto por la web. De aqui en adelante todo es sencillo. Solo se ingresa a la web, se busca el paquete, se baja, y con la experiencia que deja hacer algo asi, uno ya puede instalar desde las fuentes lo que quiera. Yo no he pensado en meter muchas cosas y me gusta mi sistema, lo mas que tengo pensado hacer es meter muchas aplicaciones CLI para seguir usando las consolas (regresemos al punto, un super geek y a mucha honra) y trabajar desde ahi como en cualquier sistema grafico, solo que en ves de escritorios usare TTY’s. Inspeccionando la web he visto maneras de optimizar en cuanto al tema del espacio, cosa que ahora estoy tratando de desarrollar, y ademas, es muy bonito saber que tu sistema es eso TU SISTEMA y de nadie mas. Tu eres un usuario mas de los paquetes pero el sistema en el cual se basa es personal. Si existe cualquier cosa que te interese de un LFS dime y tratare de escribir sobre ellos, sin mas por el momento.

fulapol@computador # shutdown –now

Anuncios

One thought on “LFS: Una experiencia desde 0 ( ó desde 3)

  1. Primeramente Hola ..esta muy ineresante lo que cuentas y me gusta mucho pues la verdad.. yo quisiera saber si me puedes dar unos enlaces de referencia o para ayudarme,por que es mi primera experiencia en esto de LSF y tengo que hacer un proyecto en un mes ..un proyecto anticipado de ultimo momento para mi Universidad..y me eligieron a mi.. ps ahora estoy en que tengo que hacer la parte grafica de la instalacion..pues otros ya adelantaron.y tienen todo en modo texto..Entonces.. kisiera ver si me puedes ayudar.. Gracias..

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s