Menú de apagado de Gnome en Ubuntu lento de narices
Publicado por blaxter - 28 Abr 2008 a las 20:53En la última versión de Ubuntu, 7.10 Gutsy, ya me empezaba a ir algo lento al pulsar para salir, apagar, reiniciar, etc… del sistema. Tardaba unos 5 segundos en mostrar la ventana con las opciones. Asumí que era así y no le he dado más importancia. Pero ahora, con la nueva versión, Ubuntu 8.04 Hardy Heron, este tiempo de espera se había incrementado a cerca de un minuto. Algo totalmente inaceptable (y realmente molesto).
Buscando un poco, descubro que es un bug reportado sobre la anterior versión. Éste se debe a tener desactivado en los programas de sesión (Sistema > Preferencias > Sesiones) el gestor de energía (gnome-power-manager), el cual lo desactivé en su tiempo porque no quería usar ninguna opción de hibernación, suspensión o similares. El caso es que si lo tienes desactivado, va a ser un suplicio salir de tu sesión (supongo que debido a un timeout al intentar preguntar a un servicio, gnome-power-manager, que está apagado), así que lo activamos y todo solucionado, la ventana de salir de la sesión saldrá al instante, como debe ser. Ves qué bien.
Subversion en aplicaciones Java desde Ubuntu
Publicado por blaxter - 15 Ene 2008 a las 19:09Cualquiera que haya usado Java, tanto usuarios como desarrolladores, habrán tenido múltiples problemas debido al tipico problema del classpath y derivados. Es posiblemente uno de los (múltiples) principales problemas de Java. Y no será por soluciones adoptadas en otras ámbitos ampliamente usadas y aceptadas como válidas. Pero bueno, ese es otro debate.
Para poder interactuar con subversion desde aplicaciones Java necesitas la librería cliente JavaHL, ésta puede ser instalada fácilmente usando los paquetes de tu distro, en Ubuntu:
$ sudo aptitude install libsvn-java
Pero a pesar de esto, tus aplicaciones Java seguirán sin “encontrarla“, necesitas indicar en tu comando de ejecución de cientos de caracteres de tu aplicación el siguiente parámetro:
-Djava.library.path=/usr/lib/jni
Obviamente /usr/lib/jni es donde está la librería (el .so), quizá en otras distros no-ubuntu sea diferente.
En mi caso particular lo necesitaba para subclipse en Aptana, en cuyo caso hay que añadir esa opción al AptanaStudio.ini donde están los parámetros usados al arrancar Aptana.
Netbeans y compiz fusion
Publicado por blaxter - 27 Oct 2007 a las 15:26Si usas compiz fusion e intentas usar Netbeans te encontrarás con una hermosa ventana sin contenidos. Para solucionar este contratiempo, simplemente edita el ejecutable de netbeans (el cual es un script shell, {DIR_INSTALACIÓN}/bin/netbeans) y añadir donde te de la gana (en algún lugar que se ejecute siempre claro… al principio, por ejemplo) esta línea:
export AWT_TOOLKIT=MToolkit
Let’s code! (esto mismo es aplicable para todas las aplicaciones que usen el, feo de cojones, toolkit AWT para hacer GUIs en Java, no sería mala idea ponerte esa línea en tu ~/.bashrc, y tal)
Parodia de Novell de la campaña “Get a mac”
Publicado por blaxter - 14 Oct 2007 a las 19:55Los anuncios de Apple de I’m a Mac, I’m a PC han servido para crear un sinfín de parodias posteriores a estos anuncios originales. No conocía la existencia de tres anuncios de Novell (compañía detrás de SuSE Linux) bastante curiosos, sobre todo este primero (que en verdad es el segundo en orden cronológico):
Seguir leyendo Parodia de Novell de la campaña “Get a mac”…
Envío de CDs de Ubuntu Gutsy disponible
Publicado por blaxter - 08 Oct 2007 a las 18:56Faltan 10 días para el lanzamiento de Ubuntu Gutsy y ya se puede solicitar el envío de CDs. Tanto para Ubuntu, como para Kubuntu e incluso para Edubuntu también. Esta vez el máximo son 2 CDs por persona de cada versión, aunque a usuarios “activos” en launchpad.net se les ofrece hasta 10 (supongo que este será el filtro que hacen, no lo sé realmente). Son totalmente gratuítos, sin letra pequeña o cosas similares. Yo ya he pedido los míos :), dos no son muchos, pero suficientes.
Mejorando rendimiento en Linux de escritorio
Publicado por blaxter - 06 Oct 2007 a las 16:51Las necesidades de un equipo de “escritorio” son bastante peculiares y especiales. Necesidades muy diferentes a cualquier otro tipo de equipo. Es difícilmente predecible su comportamiento y, por lo normal, bastante erróneas o ineficientes las configuraciones por defecto del kernel, concretamente de la gestión de la memoria virtual (vm) o swap. Comentaré dos opciones interesantes de modificar, la primera de ellas bastante conocida y la segunda un tema algo menos popular pero muy importante también.
Swappiness. Si alguien está muy aburrido aquí hay una discusión bastante interesante sobre el tema de swappiness en linux. El valor de swappiness es el tema principal cuando se trata de optimizar Linux para el usuario de escritorio normal. Dado que actualmente los usuarios tienen cantidades ingentes de memoria ram, es muy interesante decremente el valor de swappiness para forzar al kernel a no usar la memoria virtual y maximizar el uso de memoria ram. ¿Qué significa el valor de swappiness realmente? Es un valor entre 0 y 100, que cuanto mayor sea, más le gustará al kernel mover datos “sin usar” de memoria (RAM) a disco. Si nos situamos en el escenario de un usuario de escritorio el cual no va a usar grandes programas (e.g. base de datos con cientos de usuarios concurrentemente) con su memoria ram va a ser más que suficiente para correr todas sus aplicaciones sin usar siquiera la totalidad de su memoria, es decir, queremos forzar a no usar la memoria virtual debido a que en cualquier momento vamos a usar programas que estaban “inactivos” y dado que nos sobra ram por todos lados (yo hasta hace poco estaba con 512mb y sobrado…) mejor usarla al máximo. Esto se consigue poniendo swappiness a niveles muy bajos, simplemente editar el fichero /etc/sysctl.conf y añadir una linea con, por ejemplo:
vm.swappiness=1
Si queremos hacer inmediato el cambio ejecutamos
# sysctl -w vm.swappiness=1
Cache pressure. En Linux existen dos tipos de caches que el kernel utiliza, una de bloques de datos y otra de inodes. La primera de ellas es para datos en general (por ejemplo, copiar un archivo, ahí se está usando la ram y luego se copiará a disco cuando esos bloques se quiten de la memoria) y la segunda para información sobre el sistema de ficheros (para acciones como abrir ficheros, directorios, búsquedas y similares). En un sistema de escritorio es bastante común la segunda tarea y dado que también es muy común el operar con grandes ficheros (por ejemplo descomprimir esa discografía de 1gb que te acabas de bajar) como estos dos tipos de caches compiten entre sí para conseguir memoria mediante el uso de un valor se decidirá quien tiene prioridad. Por defecto suele venir el valor de 100 para la propiedad vm.vfs_cache_pressure que indica que hay prioridad para la cache de bloques de datos. Es conveniente decrementar este valor para que haya una igualdad, por ejemplo a 50. Para comprobar la efectividad de esto se puede realizar una prueba del estilo de:
- buscar archivos (se están cacheando inodes)
- copiar un archivo gordo (se eliminan inodes de la cache dependiendo del valor de la propiedad)
- buscar archivos de nuevo y contar el tiempo (según cuantos se hayan eliminado de la cache esta operación tardará más o menos, dependiendo del valor de vm.vfs_cache_pressure)
He hecho un script tonto que realiza esto mismo, necesitas tener al menos 3GB en /tmp y cuesta unos 5-10min o así, dependiendo de cuantos archivos tengas (puesto que se realizan unos cuantos find / xD). A mi esta prueba me da una mejora cercana al 25% al usar un valor 50 en vez del 100 inicial. En este caso una solución radical (poner el valor a 0) no sería muy óptimo puesto que, por lo normal, un usuario de escritorio va a hacer uso tanto de operaciones con ficheros grandes como navegación por el sistema de ficheros, por lo que a mi parecer la mejor opción es una solución salomónica, es decir, editar el fichero /etc/sysctl.conf y añadir una linea con:
vm.vfs_cache_pressure=50
Si queremos hacer inmediato el cambio ejecutamos
# sysctl -w vm.vfs_cache_pressure=50
Esta obra está bajo una
licencia de Creative Commons.
Este blog funciona gracias a WordPress
con el theme GimpStyle
diseñado por Horacio Bella y adaptado por un servidor.
Feed entradas


