Sun Java 5 en Debian Etch

| 8 Comments | No TrackBacks

Inicialmente instalaba Java en mi máquina descargándola del sitio de Sun. Sun provee dos versiones del JDK, un rpm para distribuciones derivadas de Redhat y un self-extracting binary. Como yo usaba Debian GNU/LInux me veía forzado (a menos que usara alien para convertir el rpm a un paquete .deb, pero eso es otra historia), a usar el archivo binario. Aunque esta solución en sí no tenía nada de malo, porque que el script se encargaba de configurar todas las variables de ambiente, no dejaba de sentir que mi máquina estaba "sucia", ya que no quedaba registro en la base de datos de dpkg de esta instalación. Esto por supuesto dejando a un lado el hecho obvio de que Java no es Free Software. A pesar de todo, durante mucho tiempo mantuve esta manera de trabajar.


Cada nuevo servidor que instalaba y que necesitaba Java, era manejado de esta manera. Pero el verdadero problema surgió cuando hubo necesidad de actualizar la versión de Java en estos servidores. Uff! Nada más de recordar me da flojera. En resumen, no es una manera ordenada de mantener un servidor de producción

Esto nos lleva a la segunda manera de instalar Java. Esta la supe después de mucho tiempo, más o menos en la época de Debian Sarge.
Resulta que Sarge contaba con algunas herramientas que facilitaban un poco la instalación de Java. Digo un poco porque todavía era necesario descargar el archivo binario del sitio de Sun.
El proceso tenía cuatro pasos:


  1. Descargar el JDK de Sun.
    Mismo paso que antes

  2. Como root, instalar java-package y fakeroot,
    aptitude install java-package fakeroot

  3. Como usuario normal generar un paquete .deb a partir del JDK binario.
    fakeroot make-jpkg jdk_descargado_de_sun.bin
    Esto generaba un archivo .deb para el JDK de Sun

  4. Finalmente, como root, instalar el paquete
    dpkg -i archivo_generado_por_make-jpkg.deb

Quizá más pasos que con el método anterior, pero al menos ya tenía registrado el paquete dentro de dpkg. Ya podía estar tranquilo pensando que mi sistema tenía registro completo de todas las aplicaciones
Durante algunos meses lo tuve así y, aunque la actualización era un poco molesta, no lo era tanto como en el caso anterior. Todo se reducía a descargar la nueva versión del JDK existente, generar un nuevo paquete .deb y proceder a instalarlo.
dpkg se encargaba de todo.

Aunque mejor que el primer método, no dejaba de ser molesto el tener que descargar el archivo binario del sitio de Sun y generar el paquete .deb.
Debía haber una mejor manera.

Finalmente, y es el punto donde estoy ahora, encontré que Debian Etch contiene, en la sección non-free, el JDK versión 5. Y no sólo eso. En Debian Sid existe la versión 6, por lo que en algún momento llegará a la versión testing.
Ventajas:


  1. Es un paquete existente directamente en los mirrors de Debian, por lo que está a un aptitude install de distancia.

  2. Si hay alguna actualización en los paquetes, el siguiente aptitude upgrade que le haga a mi máquina automáticamente actualizará mi JDK. Woa!

  3. Es un paquete que, al ser parte de los mirrors de Debian, recibe más pruebas de compatibilidad con otros paquetes del sistema. Por tanto, si algún usuario encuentra algún bug como resultado de la instalación de este paquete, es muy probable que el fix resultante sea incorporado a la nueva versión del JDK y por tanto todos los usuarios la recibirán en el siguiente aptitude upgrade de sus sistemas.

  4. Al ser un paquete de Debian, cumpe con los estándares del FHS (Filesystem Hierarchy Standard). Esto se traduce en que los archivos instalados por el JDK, estarán en los directorios apropiados y no en lugares como /usr/local o /opt.

  5. Como un plus, este nuevo paquete agrega la versión de java instalada a las alternatives, de manera que es posible configurar cual será el jdk usado por el sistema con un simple comando: update-alternatives --config java

Bueno, bueno, muy bien, ¿pero cuál es el comando para obtener todo esto? Sencillo.


  1. Asegurate de que tu /etc/apt/sources.list incluye las secciones non-free de los mirrors de debian. Debes tener algo similar a:
    deb http://mirrors.kernel.org/debian/ etch main contrib non-free

  2. Instala el paquete sun-java5-jdk:
    aptitude update && aptitude install sun-java5-jdk
    Debian se encargará de todo.

  3. Si deseas el plugin de java para firefox o iceweasel ejecuta:
    aptitude install sun-java5-plugin
    Tendrás que reiniciar tu navegador para que el plugin sea reconocido.

Listo. ¡Sun Java JDK 5 en tus manos con un solo comando!

Como ves, esta última manera facilita enormemente el manejo de versiones de java en tu máquina.
Por el momento tenemos que conformarnos con usar software propietario de esta manera, pero con la transición a free software de la suite de Java, pronto (quizá en Debian Lenny) java estará en la parte main de los mirrors de Debian.

Cuando eso pase, las instrucciones para instalar Java serán más sencillas todavía. Y entonces agregaré a mi lista el cuarto y, con un poco de suerte, último, método de tener Java en Debian GNU/Linux.

No TrackBacks

TrackBack URL: http://leugim.com.mx/cgi-bin/movabletype/mt-tb.cgi/3

8 Comments

Si deseas el plugin de java para firefox o iceweasel ejecuta:
aptitude install sun-java5-plugin

funciono muy bien, pero como ahi dice me dejo la 5 - 10

para la 6 no hay?

en Debian stable (etch) no hay java 6, pero en Debian testing (lenny) si está.

tienes que habilitar testing en /etc/apt/sources.list

y despues usar:

aptitude update && aptitude install sun-java6-plugin

Asegurate de que al habilitar testing en tu máquina, no vayas a actualizar toda la máquina a testing.

Busca en internet por info de

/etc/apt/preferences.conf

que es donde especificas la prioridad que aptitude le da a los paquetes al instalarlos cuando encuentra varias versiones del mismo paquete en los repositorios

Hola,

Como estas? Mi nombre es Viridiana Butrón, trabajo en el área de Staffing de Globant, compañía de servicios globales IT.
Globant es una compañía argentina que tiene operaciones en Estados Unidos, Latinoamérica y Europa. Tenemos un crecimiento del 10% mensual y damos servicios a compañías de primer nivel mundial, como Coca Cola Company, Google, SAC Capital, Grupo Santander, Citigroup, Sun Microsystems, Sourceforge, entre otros.
Nos especializamos en tecnologías open source, y somos el primer centro de excelencia Java en toda Latinoamérica, somos caso de estudio de MIT y estamos interesados en incorporar personas talentosas para nuestros proyectos en Estados Unidos.
Actualmente tenemos presencia en ciudad de México con una oficina dedicada a realizar procesos de selección y captar a las personas más talentosas.
Vimos tu perfil en tu blog, y nos interesaría conocerte para tenerte en cuenta.
Si te interesa la propuesta o quieres conocerla con más detalles, no tengo problema en que nos encontremos en algún momento para comentarlo y platicar un rato sobre las oportunidades que tenemos actualmente, y las posibilidades de que te puedas unir.
En caso de que estés de acuerdo, envíame tu cv en formato Word y te contactaré para tener una entrevista.
Muchísimas gracias.
Saludos,

Muchas gracias por tomarme en cuenta, pero en este momento estoy empleado. De todas maneras si en algún momento cambio de aires, les enviaré mis datos sin dudarlo.
Saludos

gracias... en este momento lo estoy instalando, me gustaria que me contactaras cuando tengas el cuarto metodo para java 6. saludos

No entendi nada....

Hola y gracias por la respuesta.
Acabo de instalar Debian etch r3 para amd64, he descargado el bin de www.java.com, segui los pasos, pero no encuentro el libjavaplugin.so, cuando busco en la pagina de los paquetes de debian, si esta, pero no para mi arquitecura, existe otra solución?
Gracias

si, ese es un problema con la arquitectura amd64. No hay plugin de java para 64 bits. Una manera de tener el plugin de java en tu browser es con un chroot.
Un poco complicado y tardado pero hasta que Sun no produzca un java plugin de 64 bits hay muy pocas opciones.
Lee el
AMD64 HOWTO para mayor información.

Saludos

Leave a comment

About this Entry

This page contains a single entry by Miguel Cobá published on March 1, 2007 12:32 AM.

Inicio del blog was the previous entry in this blog.

VirtualBox is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.