Gentoo Logo

Renuncia de responsabilidad: La versión original de este artículo fue publicada por IBM developerWorks y es propiedad de Westtech Information Services. Este documento es una versión actualizada del artículo original y contiene mejoras introducidas por el Equipo de Documentación de Gentoo.
Este documento carece de soporte activo.


Creando la distribución, Parte 3

1.  El autor se aparta de Linux y entonces vuelve

Al final de mi anterior artículo, describí cómo el desarrollo de Gentoo Linux fue efectivamente detenido por un extraño error que bloqueaba el sistema cuando este estaba ocioso, el cual comencé a experimentar tan pronto como actualicé a una nueva placa base dual-Celeron (una Abit BP6). Ya que no fui capaz de corregir el problema, y por aquél tiempo no tenía los suficientes ingresos para reemplazar mi placa base, decidí parar el desarrollo de Gentoo Linux y cambiar a FreeBSD. Necesitaba un sistema funcionando, y como Linux se bloqueaba bastante, sería un momento excelente para familiarizarme con un sistema operativo BSD. Por lo que instalé FreeBSD, comencé a aprender y no toqué Linux en absoluto durante varios meses.

Impresiones sobre FreeBSD

De todas formas, a mí realmente me gustaba FreeBSD. Sentía que este sistema operativo estaba bien armado y que prácticamente cada parte del sistema tenía un consistente grado de refinamiento que casi nunca se encontraba en el mundo Linux. Disfruté del hecho que FreeBSD contenía un complemento extenso de páginas man, al contrario que Linux, donde muchos programas solo tienen la documentación info de GNU, que a mi personalmente no me gusta usar.

Sobre todo, estaba impresionado con el sistema de ports de FreeBSD, la tecnología usada para mantener y actualizar el sistema. Al contrario que el enfoque de Linux, los ports no usan paquetes binarios, en lugar de eso lo compilan todo localmente desde las fuentes originales. Da igual si está instalando Samba o actualizando el núcleo del sistema, todo es compilado en su máquina local. Este enfoque me gustaba y era muy similar al que había estado creando en Gentoo Linux. De esta y muchas formas, el diseño de FreeBSD se ajustaba con mis sensibilidades como desarrollador y administrador de sistemas. Por esta razón, FreeBSD me dio un cómodo entorno de trabajo durante muchos meses, y estaba encantado de tomarme el tiempo para familiarizarme con este excelente sistema operativo.

Pros de FreeBSD

Muchas de las diferencias entre Linux y FreeBSD proceden de sus diferentes estructuras de desarrollo. El desarrollo de Linux está muy descentralizado, y confiamos en las distribuciones para juntar y unificar los varios trozos de Linux dispersados por Internet. A diferencia de éste y los otros BSDs (OpenBSD y NetBSD), donde existe un equipo de desarrollo unificado conectándose a un único conjunto de fuentes. Bien, por lo menos cada BSD tiene su propio conjunto de fuentes unificadas. Esto puede ser algo bueno, y resulta que en FreeBSD no tenemos un sentimiento de "parcheado todo junto" como lo hay en muchas distribuciones Linux.

A continuación, podemos comparar la tecnología debajo del capó. En la mayoría de las ocasiones, un fan de FreeBSD podría asegurar que FreeBSD está mejor preparado para ser un servidor que Linux. Te contarán que FreeBSD es mejor bajo grandes cargas, y tiene una pila TCP/IP mejor. Si comparara Linux 2.2 o anterior con FreeBSD, tendría que admitirlo, FreeBSD es un gran SO para un servidor, eso es seguro. Pero, eso era para Linux 2.2 y anteriores. Yo era un gran fan de los núcleos de prueba de la 2.4 que estaba corriendo. Son realmente, realmente, buenos y contienen una buena pila TCP/IP y un sistema "netfilter" completamente rediseñado que realmente fascina. Al final, creo que Linux será el que fije nuevos estándares de rendimiento y hará los servidores libres UNIX más competitivos frente a sus rivales comerciales.

Contras de FreeBSD

En cuanto al escritorio, al contrario que en el mundo del servidor, realmente no hay comparación -- Linux es donde está la acción. El último desarrollo en el escritorio aparece en primer lugar en Linux, y Linux está a la cabeza en el soporte a las tarjetas de aceleración 3D y de audio. Con el enfoque de Linux 2.4, Linux continuará su dominio en éste área.

La única cosa que no me gusta de FreeBSD es el uso del sistema de ficheros UFS. Mientras que UFS es más fiable y robusto que ext2, es también lento hasta la extenuación. Es posible usar una extensión especial llamada soft updates (actualizaciones soft), que es capaz de acelerar el sistema de ficheros añadiendo operaciones E/S en bloques mayores. Aunque las actualizaciones soft mejoran UFS tremendamente, no puedo decir que UFS realmente mejore el rendimiento de ext2 en cualquier aspecto. Desde luego, es más fiable, por lo tanto FreeBSD bate a Linux en la batalla del sistema de ficheros. De nuevo, al menos esto es cierto cuando comparamos las viejas distribuciones Linux 2.2 con FreeBSD.

Sin embargo, las cosas cambian cuando comparamos las modernas Linux 2.2 y Linux 2.4 con FreeBSD. ReiserFS (un nuevo sistema de ficheros transaccionales disponible para Linux) es simplemente sorprendente. Linux dispondrá también de ext3, JFS de IBM y XFS a futuro, de los cuales esperamos excelente rendimiento y fiabilidad. Actualmente, ReiserFS le da a Linux una mayor ventaja sobre FreeBSD, y es una de las razones por las que creo que Linux 2.4 le da la vuelta a muchos de los viejos argumentos de la superioridad de FreeBSD sobre Linux.

De vuelta al desarrollo de Gentoo Linux

Después de algunos meses, decidí volver al mundo Linux y tener Gentoo Linux corriendo en una nueva máquina de desarrollo. Al principio, la decisión de reiniciar el desarrollo de Gentoo Linux fue más una decisión de negocio -- había invertido mucho de mi tiempo para conocer Linux, y sería un desperdicio arrojar todo este conocimiento adaptándome a BSD. Sin embargo, poco después comencé a actualizar Gentoo Linux, encontré muchas nuevas razones por las que merecía la pena volver a Linux, principalmente todas las mejoras en el núcleo y sistema de ficheros mencionadas arriba. FreeBSD era un lugar tranquilo, pero un poco aburrido, muy parado. Linux es donde estaba la acción, donde se estaban realizando los mayores progresos. No hay duda que si está buscando sensaciones e innovación, Linux es el lugar en el que se debe estar.

Para mi, la era Linux 2.2 fue una decaída decepcionante respecto de la era 2.0, sin embargo la era 2.4 prometía merecer la espera. Por lo tanto, Gentoo Linux renació, y yo estaba entusiasmado.

Hay otra razón clave para el renacimiento de Gentoo Linux -- Achim Gottinger, mi líder del equipo de desarrollo. Me gustaría dedicarle algo de espacio de agradecimiento a Achim por ayudarme a reiniciar el desarrollo de Gentoo. Comencé a recibir correos de Achim poco antes de mi retorno al mundo Linux. En casi todos los correos, él incluía algún nuevo guiones .ebuild (autobuild) para Gentoo Linux o alguna corrección de fallo desesperadamente necesitada. Conforme reiniciaba el desarrollo de Gentoo Linux, Achim continuó contribuyendo con su tiempo y recursos para ayudar a a mantener en pie la distribución. Hasta poco antes, Achim y yo habíamos sido las únicas personas trabajando en Gentoo Linux, y había sido por propia elección. Teníamos una visión similar de la distribución, y debido a las habilidades de Achim, éramos capaces de sacar una cantidad tremenda de trabajo adelante y nunca sentimos realmente que, añadiendo un tercer desarrollador, contribuiría significativamente a nuestro progreso. Actualmente, Achim es el líder de desarrollo de Gentoo Linux, y continúa haciendo grandes mejoras a Gentoo Linux casi a diario. Hemos alcanzado el punto en el que estamos preparados para que otros comiencen a trabajar en nuestro árbol CVS, y hemos comenzado a expandir el equipo de desarrollo de Gentoo Linux gradual y cuidadosamente.

La nueva visión

No creo que el tiempo que permanecí en el mundo BSD fuera de ninguna forma un desperdicio. De hecho, me dio una oportunidad tremenda de reflexionar acerca de los acontecimientos en toda la comunidad Linux y de cómo Gentoo Linux podría ayudar a mejorar las cosas.

En la nueva versión de Gentoo Linux. Tomé la decisión de no usar pgcc nunca más, ni tampoco usar optimizaciones muy elevadas para compilar todos los binarios. Ya que la estabilidad era de suma importancia, podríamos usar optimizaciones razonables del tipo ("-O2 -mpentium") y ofrecer a los usuarios una forma fácil de personalizar estas optimizaciones a su gusto usando nuestro sistema autobuild.

FreeBSD me dio un a buena idea de cómo un sistema autobuild debía funcionar. Decidí añadir varias características de FreeBSD para hacer de nuestro sistema autobuild (ahora llamado portage) un sistema auténtico de última generación.

Portage es el corazón de Gentoo Linux, y es más que un simple gestor de paquetes o un sistema de mantenimiento. Consiste en una serie de herramientas y guiones de construcción. Portage le permite reconstruir completamente la distribución desde las fuentes originales. Pero, más importante para mi, Portage da al usuario acceso completo a la inteligencia de cómo se construyó Gentoo Linux. Para nosotros, esto es muy importante porque significa que estamos documentando cómo se construye una distribución mientras, al mismo tiempo, estamos impulsando el desarrollo de Gentoo Linux. Y, ya que Portage es fácil de comprender, esperamos que abrirá los entresijos de Linux a mayor gente aún, para que otros puedan comenzar a contribuir a nuestras fuentes y guiones.

Portage es nuestra forma de abrir las puertas de la tecnología Linux a otros. Estudiando los guiones autobuild, puede ver como los distintos paquetes se juntan en un único todo. Si es necesario, puede coger nuestro árbol CVS completo y meterle mano, produciendo su propia distribución o tecnología basada en Linux. Creemos que esto es bueno -- queremos darle a la gente el conocimiento que necesitan para poner a Linux en su nueva esfera.

Preocupaciones comerciales

Desde sus comienzos, hubo mucha gente de distintas procedencias involucradas en el desarrollo de Gentoo Linux. Y no me sorprendió saber que nuestros desarrolladores tenían opiniones diametralmente diferentes de cómo debíamos orientar el lado lucrativo de Gentoo Linux. Básicamente había dos grupos de desarrolladores: un grupo generalmente se oponía a las intenciones de hacer dinero, mientras que el otro estaba entusiasmado ayudando a que Gentoo Linux llegara a ser un producto comercial de éxito. Esta era una división esperada; el primer grupo entendía la involucración comercial como una influencia corruptora, mientras que el segundo no veía esas asociaciones negativas.

En los días de Enoch, solía dudar sobre esta cuestión. Realmente no sabía darle el enfoque adecuado. Reconocí el hecho que las distribuciones como Debian estaban realmente comprometidas con la distribución libre de su software. A mi me gustaba eso. Comparando con otras distribuciones comerciales, ellos hacían la vida más fácil al usuario dándole detalladas instrucciones en su sitio Web. Eso era algo bueno, y algo que quería emular.

Al mismo tiempo, quería realmente que Gentoo Linux fuera un éxito comercial. Luchaba para encontrar el equilibrio, pero realmente nunca lo encontré hasta hace poco.

¿Qué hacer?

Entonces, ¿Cómo vamos a planificar el equilibrio entre los intereses comerciales y no comerciales? La clave es recordar nuestra fundación -- la fundación Gentoo es software de Código Abierto. Así, la fundación para todas nuestras aventuras debe enfocar en el Código Abierto. No es suficiente con aprobar el Código Abierto, o simplemente usarlo. Debemos también potenciar su desarrollo y distribución, y nunca usar esa postura para obtener una ganancia comercial. Más aún, nunca deberemos estructurar nuestro modelo de negocio para que haya una tentación de restringir la libre distribución de nuestras fuentes. Nuestro equipo de desarrollo necesita ser abierto y accesible al público, y la libre distribución de Gentoo Linux no solo debe ser permitida, sino fomentada. Necesitamos ser abogados de Código Abierto, no solo de palabra sino también de acción.

Si una compañía quiere usar Gentoo Linux para una tecnología basada en Linux, simplemente debe bajarse los contenidos de nuestro árbol CVS y comenzar a usarla, ya que todo nuestro trabajo está distribuido bajo GPL. No queremos limitar el uso de nuestro trabajo de ninguna forma, excepto para asegurarnos que en todos los productos derivados se cumple con la Licencia Pública GNU.

Nos gustaría que la mayor cantidad posible de gente se beneficiara de nuestro trabajo, pero también nos gustaría beneficiarnos todo lo posible de nuestras mejoras a Gentoo Linux. Si forma parte de una compañía que usa Gentoo Linux como base para su producto, esperamos que nos mande algunas mejoras libremente distribuibles para que las podamos añadir. Queremos abrigar la colaboración entre las entidades comerciales y no comerciales. De esta forma, tanto el administrador de sistemas usando Gentoo Linux en su ISP como la corporación construyendo un nuevo producto comercial de servidor se puedan beneficiar de las mejoras y correcciones a Gentoo Linux del otro. Es el momento de promover el libre intercambio de código entre todo el mundo. Solo el Código Abierto lo hace posible.

¿Qué nos depara el futuro?

Ahora mismo estamos a punto de lanzar Gentoo 1.0 (debería estar disponible para cuando lea este artículo en developerWorks). Pero, ¿Qué nos depara el futuro?

Mientras movemos hacia la 2.0, espero continuar mejorando Portage, la tecnología en el corazón de Gentoo Linux. Cualquier mejora importante a Gentoo Linux generalmente comienza con una mejora en Portage. Me gustaría continuar el proceso de convertir la mayoría del código de bash a python, que siempre nos permite añadir nuevas características como el diseño orientado a objetos a nuestro sistema autobuild.

Aparte de los cambios en Portage, espero continuar aumentando lenta y cuidadosamente nuestro equipo de desarrollo, encontrando desarrolladores habilidosos que compartan nuestra misma visión. Conforme crece nuestro equipo de desarrollo, seremos capaces de expandir de forma amplia el número de guiones autobuild disponibles para Gentoo Linux. Pero, más importante que esto, un equipo de desarrollo ligeramente superior nos dará los recursos que necesitamos para mantener a Gentoo Linux en el filo de navaja de la tecnología Linux. Ahí es donde está la diversión :)

Esperamos que las compañías comerciales con tecnología Linux, elijan Gentoo Linux como la base para sus productos. Actualmente mantenemos una relación de este tipo, y esperamos tener muchas más en el futuro. Estos tipos de colaboraciones prometen dar ratos de diversión y ser un gran beneficio a todos los usuarios de Gentoo Linux.

Al final, nuestra primera meta es contribuir en algo con sentido a la comunidad Linux. Aunque hay muchas distribuciones Linux entre la que elegir, sabemos que Gentoo Linux ofrece algo que realmente no está disponible en ningún otro lugar. Estamos entusiasmados con el futuro del desarrollo de Gentoo Linux y esperamos que el lector también lo esté.

Recursos

Acerca del autor

Daniel Robbins vive en Albuquerque, Nuevo Méjico. Fue Presidente/CEO de Gentoo Technologies Inc., el Arquitecto Jefe del proyecto Gentoo y es un autor que contribuye en varios libros publicados por MacMillan: Caldera OpenLinux Unleashed, SuSE Linux Unleashed, y Samba Unleashed. Daniel ha estado envuelto de alguna u otra forma en el mundo de las computadoras desde el segundo grado cuando entró en contacto con el lenguaje de programación Logo y una dosis potencialmente letal de Pac Man. Esto probablemente explica porqué desde entonces sirvió como Artista Gráfico en SONY/Electronic Publishing/Psygnosis. Daniel disfruta de su tiempo con su mujer Mary y su nueva hija Hadassah. Puedes contactar con Daniel en drobbins@gentoo.org.



Imprimir

Página actualizada 9 de octubre, 2005

Sumario: Este artículo termina su historia -- acerca de cómo acabó creando su propia distribución llamada Gentoo Linux. El cierra la serie contando cómo dejó el mundo de Linux para moverse a FreeBSD, y de cómo volvió al mundo de Linux, reiniciando el desarrollo de Gentoo Linux con una nueva perspectiva. Aparte de comparar Linux y FreeBSD en varias áreas, también describe el progreso en el desarrollo actual de Gentoo Linux y comparte una visión futurista de la distribución.

Daniel Robbins
Autor

José María Alonso
Traductor

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.