Sun Java 5 en Debian Etch
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:
- Descargar el JDK de Sun.
Mismo paso que antes - Como root, instalar java-package y fakeroot,
aptitude install java-package fakeroot - 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 - 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:
- Es un paquete existente directamente en los mirrors de Debian, por lo que está a un aptitude install de distancia.
- 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!
- 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.
- 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.
- 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.
- 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 - Instala el paquete sun-java5-jdk:
aptitude update && aptitude install sun-java5-jdk
Debian se encargará de todo. - 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.
November 23rd, 2007 at 5:14 pm
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?
November 23rd, 2007 at 8:46 pm
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
December 4th, 2007 at 4:12 pm
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,
December 9th, 2007 at 12:36 pm
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
March 12th, 2008 at 8:48 am
gracias… en este momento lo estoy instalando, me gustaria que me contactaras cuando tengas el cuarto metodo para java 6. saludos
March 16th, 2008 at 3:57 pm
No entendi nada….
March 17th, 2008 at 11:31 am
Hola y gracias por la respuesta.
Acabo de instalar Debian etch r3 para amd64, he descargado el bin de http://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
March 17th, 2008 at 10:16 pm
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