Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
París-Tombuctú^UDebian-Gentoo

Distribuciones
Por jamarier
departamento distribuciones , Sección Desarrolladores
Puesto a las Sat Feb 3rd, 2007 at 04:57:22 PM CET
Hace unos meses, me instalé una gentoo en mi sistema. Pensando en ello, escribí un texto pensado para ser publicado en libertonia. Este texto hay que verlo con la «inocencia» de pocas semanas de uso y mi opinión ha variado algo desde entonces (pero eso sería tema para una nueva entrada).

 


Hace años que me declaro debianita. Conforme los años pasan, mi punto de vista a porqué uso debian ha variado. En la actualidad, uso debian porque es lo que conozco. Tengo un sistema instalado y funcionando en debian y no tengo ni mucho espacio en el PC, ni tiempo para pelearme con una nueva instalación (y sobre todo con un nuevo sistema de instalación/configuración, del sistema operativo y de las aplicaciones de uso habitual). Es decir estoy con Debian pero no me siento atado a ella, simplemente lo uso (en el trabajo tengo Suse, y a mi padre le instalé una Mandrake primero y ahora una Ubuntu.

Ahora solo me pongo la túnica naranja en los ceremoniales.

¿qué tiene debian de malo? Nada. Cada vez estoy más convencido de la frase «linux es linux es linux es linux»(tm) Pero hay cosas que no me terminan de ajustar:

  • En el camino que recorre un programa desde el desarrollador original hasta el usuario, introduce a un desarrollador debian. Eso es bueno, porque impone un control de calidad estricto al paquete que llega pero todos sabemos que la velocidad de una cadena de montaje es la del elemento más lento. En muchas ocasiones, pueden existir retrasos de meses hasta que llegue al repositorio de debian (Cosas como monodevelop, y mono en general, de muy alta velocidad de desarrollo es una tortura usarlos en debian con los repositorios oficiales). Se podrían usar fuentes extraoficiales, pero dependiendo del paquete puede aumentar la inestabilidad del sistema.
  • Perl en paralelo. Los paquetes con módulo de perl hay que adaptarlos a mano de los disponibles en CPAN. Por lo que solo hay una pequeña muestra de los mismos disponibles en debian. Si empleamos la utilidad «cpan» para bajar directamente el paquete que necesitamos, no es capaz de interactuar con el sistema de debian y terminaremos teniendo instalado el mismo paquete dos veces (uno por debian y otro por cpan).
  • Control de versiones de paquetes. Puede resultar más o menos dificil instalar un paquete con una vesión no estándar. Normalmente es de locos querer tener un programa con dos versiones distintas simultáneas pero no es tan raro en las librerías. Donde un programa (mal diseñado por otra parte) exija emplear la libreria v2.3.1.4.2 ni una más ni una menos. (Constantemente está aptitude luchando al actualizar con programas que exigen la librería versión 1 que tienen un conflicto con programas que requieren la misma libreria versión1.1).

(reconozco que la programación es importante para mi)

Circustancias de la vida, un disco duro nuevo y un periodo un par de semanas disponible me ha hecho considerar el probar otras distribuciones.

Recientemente he estado en Barcelona y asistí a una charla sobre Gentoo. La verdad es que el charlista tenía buena labia y me convenció a probar de nuevo gentoo. (ya hubo un desastroso intento, narrado en otra ocasión). Y siguiendo sus consejos emprendí la tarea de pelearme con «la bestia» de nuevo. A partir de ahora, mis impresiones sobre la misma. (tras un par de meses de uso).

Gentoo es una distribución que requiere conocimientos elevados en administración de linux y configuración. Empecemos por el principio. La instalación se efectúa ejecutando un LiveCD que contiene un par de instaladores y programas precompilados. El instalador es malo y peligroso. En mi caso, no comprobó la integridad de los datos de particionamiento de los discos duros (yo le dije que empleara el espacio sobrante) y directamente me fusiló una partición con windows y cuando vio que la cosa no encajaba me dió un error (lo lógico hubiera sido hacerlo al reves, comprobar si la información es correcta y actuar si no hay errores en los datos). Al final me instalé gparted en debian y hice la nueva partición previa la instalación. Juré en arameo. La configuración del teclado, idioma y los datos de red (que en mi equipo están asignadas manualmente) me fueron preguntados durante el proceso de instalación, pero finalmente no llegaron a copiarse en los ficheros de configuración del nuevo sistema instalado. Así que me encontré sin eñes y sin red. Y tras jurar en griego esta vez, tuve que recordar cómo se configuraban estas cosas (tras darme cuenta que algunos ficheros en /etc están cambiados de sitio, respecto debian).

emerge es la utilidad equivalente apt-get y aunque hecho de menos mi aptitude. No es dificil de manejar en los casos habituales. Y aqui llegamos al topicazo de gentoo: con gentoo te pasas todo el día compilando, el micro está recalentado por tanto esfuerzo, los discos duros se gastan antes por esfuerzos de compilación constante, etc. Antes de continuar explicaré un poco de que va esto del portage y a que viene estas historietas de terror. Creo que la idea fundamental de gentoo (digan lo que digan ciertos gentoozas) es eliminar intermediarios entre el desarrollador del programa que sea y el usuario (este era justamente uno de los problemas que citaba en debian). Según gentoo, es el desarrollador original del programa el que debe corregir los fallos de seguridad del mismo y dar nuevas funcionalidades. La calidad final del programa es la que le de este desarrollador original y gentoo tiene como en Star Trek obligación de no intervención en el código. Aunque los programas pueden distribuirse por el programador como ejecutables directo es práctica común y más en programas de cierta entidad tener disponibles el código fuente. Los desarrolladores de Gentoo lo que hacen es elaborar un fichero llamado ebuild con instrucciones para bajarse y compilar el programa que deseamos de forma automática. emerge que es inteligente toma dicho fichero y lo hace por nosotros. Normalmente cuando ocurre un cambio menor de versión, las instrucciones contenidas en el ebuild se pueden reciclar fácilmente. Con lo cual se pueden mantener al día fácilmente todo el conjunto de ebuilds que contiene gentoo. Hay un mecanismo de seguridad y es que los nuevos ebuilds permanecen 30 dias en cuarentena en un repositorio inestable (en nomenclatura gentoo: enmascarado). Pasado ese tiempo, si no hay problemas salta a la versión estable (ummmm, copiado de debian ;-) Hasta ahora, parece que le he dado la razón a las habladurías de las «semper compilacionis». Aunque potencialmente podría darse el caso de tener versiones nuevas de los programas instalados muy frecuentemente y tener que compilar mucho, la realidad experimentada por mi es que rara vez he tenido que instalar más de 2 programas cada vez que actualizo el sistema (osea unos 5 minutos por cada 3 días). Paquetes como el open office, pueden tardar en un equipo moderno una noche, pero afortunadamente OO no hay que actualizarlo semanalmente, ni mensualmente. Un administrador avezado empleará profusamente instrucciones como nice para que no aparezca un impacto en la carga del micro.

Hay una segunda información que mencionar sobre la compilación. Esta se puede personalizar: por un lado podemos aportar opciones al compilador para que el código generado se ajuste a ciertas optimizaciones (yo soy bastante escéptico sobre mejoras apreciables en equipos de sobremesa, ya que los micros modernos contienen optimizaciones hardware a la hora de ejecutar código diseñado para micros más antiguos) y por otro lado podemos indicar que opciones queremos que se empleen en la instalación/bajada/compilación de los programas. Por ejemplo, si un ebuild diera la opción de lenguaje español, podríamos compilar exclusivamente para este lenguaje sacando del ejecutable los demás. Es indudable que bajar/compilar/instalar es más lento que bajar e instalar, pero en un sistema moderno los tiempos de compilación son asumibles siempre y cuando no se instalen, prueben y borren los programas compulsivamente. En equipos estables es poco frecuente la instalacion de software nuevo. Por cierto, todo el sistema de ebuilds y utilidades se denomina Portage.

Hecho de menos debconf. Para el que no sepa de que va es el mecanismo de debian para gestionar configuraciones. Primero aportan una configuración general para un usuario medio (decidido por el desarrollador del paquete), segundo te hace preguntas según el «nivel de dificultad» que tengas seleccionado tomando las demás con su valor por defecto y en caso de actualización del paquete recuerda las opciones dadas anteriormente. Gentoo tiene un mecanismo de control de conflictos en la configuración (etc-update) bastante espartana pero muy potente y en los casos que he visto las configuraciones tiene que hacerselas uno mismo. (esto me ha hecho sufrir un poco con las X window).

El sistema de gestión de dependencias de ebuilds es para mi gusto espartana. Los paquetes tienen listas de sus dependencias directas (los paquetes que necesitan para que el mismo funcione) pero no presenta las dependencias inversas (los paquetes que dependen de uno). Además no hay una lista de dichas dependencias precalculadas, así que en todo proceso relacionado con el portage, la primera operación es construir el arbol de dependencias. A la hora de desinstalar un paquete no borra aquellas dependencias que fueron instalados exclusivamente para satisfacer el paquete y es necesario posteriormente correr una utilidad que busque paquetes sueltos para borrarlos. (En debian apt-get no se encarga tampoco de borrar las dependencias automáticas, aunque aptitude si lo hace ya. Para borrar paquetes sin hijos en debian está deborphan y orphaner). Por otra parte, como el nombre y números de paquetes en un fichero depende de las opciones de compilación de cada usuario, no existe un buscador de ficheros en internet que dandole el nombre de un fichero te diga que paquete lo instala (si existe un buscador local que te dice los ficheros instalados en tu máquina donde están y que paquete lo ha instalado, pero si necesitas un fichero y está en un paquete que no has instalado no tienes esa ayuda).

Quedan muchas cosas por comentar pero pocas ganas para continuar, así que voy a indicar que aunque en principio no es necesario compilar un kernel a la medida, al final me he encontrado con ebuilds que quería instalar que buscaba información en /usr/src/linux así que me he compilado uno y solucionado (tienen una utilidad de construcción de kernels «genkernel» que en su opción para tontos genera un kernel similar al de los LiveCDs con cientos de módulos que tarda una eternidad en compilarse y otra en arrancar; tras una prueba terminé personalizandolo a mi equipo).

Otro aspecto, y que prometo que será de verdad el último, es que aunque abogan por el software libre y tienen un manifiesto similar al de debian, incorporan dentro de portage cosas como flash, los drivers de nvidia o java (ops, este párrafo lo escribí antes de que liberasen java ;-). De forma que no es necesario efectuar virguerías para instalar dicho software.

Un amigo correligionario de debian me preguntó ¿entonces me recomiendas gentoo? Mi respuesta fue «de ninguna manera». Gentoo es una distribución de un perfil elevado donde mucho se configura a mano y me parece pensado por y para programadores. Las ventajas de velocidad, desde mi punto de vista no justifican los conocimientos necesarios en administración. ¿para quién es gentoo entonces? Gentoo es una distro muy joven frente a las clásicas (Debian 1993, Mandriva 1998, Suse 1994 y Gentoo 2002) por lo que tiene experiencia respecto a las decisiones y fallos de diseño que las otras tienen. Es lógico pensar que fueron tenidas en cuenta para idear gentoo. Yo recomendaría gentoo exclusivamente a aquellos que las distribuciones actuales les presentan limitaciones por motivos de diseño (y por supuesto, si pueden comprobar de antemano que dicha limitación no aparece en gentoo :-)

Por ahora seguiré jugando con mi gentoo. ;-)

< Fotos panorámicas en Linux (7 comments) | VDR (9 comments) >
Enlaces Relacionados
· escomposlinux.org
· otra ocasión
· More on Distribuciones
· Also by jamarier

Encuesta
Gentoo....(y la lastima de que no se puedan hacer dos encuestas)
· vaya panda de raros. Una copia del sistema de ports de *BSD para linux (no pienso probarlo) 8%
· Es interesante como punta de investigación en las distros, pero poco útil en la práctica (lo probé y no me convenció) 37%
· linux es linux es linux es linux.... (tm) 41%
· Idea fabulosa y muy útil (y yo lo uso). 8%
· El espiritu santo se encarnó en una distro y se llamó gentoo (y soy desarrollador gentoo) 4%

Votos: 24
Resultados | Otras Encuestas

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
París-Tombuctú^UDebian-Gentoo | 11 comentarios (8 temáticos, 3 editoriales, 0 ocultos)
Genial el artículo (none / 0) (#1)
por shamkao a las Mon Jan 29th, 2007 at 11:08:07 PM CET
(Información Usuario)

Está muy bien el artículo. Siempre me he preguntado que tal sería probar una gentoo y nunca me he atrevido, ahora sé que no debo hacerlo (no lo digo porque ése sea tu mensaje, sino por las conclusiones que he sacado aplicándolas a mi caso).

Hoy mismo en slashdot hay una noticia relacionada con gentoo.

http://linux.slashdot.org/article.pl?sid=07/01/28/2227232&from=rss



 
La nueva entrada (none / 0) (#2)
por JulHer a las Tue Jan 30th, 2007 at 07:37:02 AM CET
(Información Usuario)

...y mi opinión ha variado algo desde entonces (pero eso sería tema para una nueva entrada).

Pues esperaremos con ganas ese gentoo revisitado, pero... ¿tanto ha cambiado tu opinión, o simplemente es que te has hecho al sistema y le ves más ventajas?



Hilo en usenet (none / 0) (#7)
por amphora (amphora@ecol.org) a las Thu Feb 1st, 2007 at 11:33:47 AM CET
(Información Usuario) http://sistematica.es

Hace tiempo que hubo un hilo interesante al respecto en los grupos de usenet de ecol. http://groups.google.com/group/es.comp.os.linux.instalacion/browse_thread/thread/662bbbb193118ca0/28461b7009e7144a?lnk=st&q=&rnum=2&hl=es#28461b7009e7144a



 
Son cosas de la edad (none / 0) (#8)
por atordo a las Sun Feb 4th, 2007 at 01:39:55 AM CET
(Información Usuario)

Gentoo fue la última distro "nueva" que probé. Me pareció interesante pero no acabó de convencerme (pista: compilar todo no es muy recomendable en un portátil donde la temperatura y la batería pueden ser un problema).

En el trabajo, por supuesto que ni se me ocurre hacer experimentos. Y en casa lo tengo todo tan "niquelado" con Debian y Ubuntu que, ¿para qué meneallo?

Una distro que me apetece probar es Arch. Pero uno se hace comodón con la edad, y teniéndolo todo perfectamente funcional, me da mucha pereza romperlo sólo por experimentar.



 
En evolución... (none / 0) (#9)
por ch3m4 a las Mon Feb 5th, 2007 at 04:06:05 AM CET
(Información Usuario) http://zaralinux.org

He encontrado interesante la lectura de este comentario. Es raro encontrar usuarios de linux que comente su experiencias con gentoo tal como tu lo cuentas. Por lo general, tan sólo se les puede sacar frases como "me fue imposible" o "ya probaré otro año".

En mi caso, he ido probado varias distribuciones a lo largo de estos años. Tengo linux instalado por doquier, no sólo ordenadores, también en dispositivos electrónicos como PDAs, routers, videocónsolas, TDT+VPR, etc. El que no traía linux, se lo puse yo como pude. Con todo este bagaje, puedo asegurar que, para mí, gentoo se ha convertido en mi distro definitiva. Me ha gustado lo de que con gentoo se "puede" quitar al desarrollador intermediario entre usuario y desarrollador original. En realidad, me gusta más ver el portage como un metainstalador de aplicaciones que bien podía usarse en cualquier sistema operativo, y no sólo linux.

Con el siempre-tener-que-compilar de gentoo se convierte en toda una bendición cuando tienes que instalar un linux en un dispositivo que no tiene un procesador de arquitectura intel como los PPC de los macintoshes o el ARM, e, incluso, para los procesadores de 64bits. Configurando bien los parámetros del gcc, los paquetes se instalan siempre optimizados para la arquitectura de tu CPU. Así mismo, puedes ajustar diversos parámetros para prescindir de todo aquello innecesario con el fin de reducir el tamaño de la instalación.

En cuanto al futuro de gentoo, vale la pena comentar el tema de los "overlays": son capas que se superponen en la estructura del portage de modo que es posible experimentar nuevas propuestas antes de que pasen a ser definitivas en el arbol principal del portage. En gentoo se pueden tener instaladas varias versiones de un mismo paquete en lo que se conoce por "instalar en slots". Pero con java es bastante complejo llevar un control de dependencias. A las diferentes versiones de la JVM, se añaden los compiladores de java como jikes o gcj que se podrían emplear para compilar "a la gentoo" los paquetes java. Pasar a una nueva versión de java suele ser una pesadilla en cualquier distribución, hasta el punto de asegurar que ninguna lo hace bien. En gentoo, basta con añadir el overlay de java-experimental para ir probando una nueva versión del JVM sin afectar a los paquetes java que todavía funcionen con versiones anteriores de JVM. Así mismo, se puede experimentar a compilar con gcj algunos paquetes java (eg: eclipse) de modo que no necesite de JVM para funcionar.

A pesar que me parece una manera cómoda de trabajar, reconozco que no es fácil usar un gentoo. La idea detrás de gentoo es que las decisiones las tienes que tomar tú mismo: gentoo no decide nada por tí. Ésto te obliga a tener las ideas muy claras sobre lo que quieres hacer. Creo que ése es el motivo por el que la gente se pierde y por lo que busca distros que se instalen sin pensar. También reconozco que, para servidores empresariales donde prime la estabilidad, a veces es necesario instalar distros generalistas (debian,RHEL,SLE) cuya instalación se pueda "certificar". Para este caso, gentoo no resulta nada adecuado.



París-Tombuctú^UDebian-Gentoo | 11 comentarios (8 temáticos, 3 editoriales, 0 ocultos)
Ver: Modo: Orden:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda