martes 19 de febrero de 2008

Tableta gráfica NGS Draw Master con Windows Vista

Recientemente compré para mi mujer una tableta gráfica NGS Draw Master que aunque funcionaba sin problemas en un equipo con Windows 2000 finalmente con el cambio de su ordenador (a un portátil Acer Extensa 5620Z) ha sido necesario que funcione con Windows Vista.

De entrada, como en la caja de la tableta gráfica no indicaba nada sobre su compatibilidad con Windows Vista, busqué directamente en la web de NGS los controladores para Windows Vista. Efectivamente habían controladores y se instalaron sin problemas en el ordenador.

Sin embargo, al apagar el portátil me di cuenta de algo raro (o que no había percibido hasta ese momento). Tardaba mucho, muchísimo en apagarse (del orden de un minuto o incluso más). Investigando un poco encontré que en Windows Vista en las opciones de rendimiento el sistema operativo te puede avisar de elementos que estén ralentizando tanto el proceso de arranque como el de cierre del equipo. En mi caso el aviso era el siguiente:



Este InputPersonalization.exe corresponde a un componente del soporte de "Tablet PC" en Windows Vista. Así que el problema tenía que ver evidentemente con la instalación del controlador para la tableta gráfica de NGS.

Este problema, junto con el detalle de que era necesario pulsar el botón del ratón inalámbrico (que acompaña a la tableta gráfica) una vez para que el cursor del ratón se empezara a mover con el movimiento del ratón, mostraba que el soporte para Windows Vista no era el más adecuado.

Como el Windows Vista me reconocía la tableta gráfica de NGS como una "WP8060 HID" busqué a ver si encontraba otro controlador que funcionara mejor, ya que el producto de NGS parecía que fuera de otro fabricante. Y encontré esta otra tableta gráfica WP8060-TAB06 de UC-Logic, que se parece sospechosamente a la que vende NGS. Descargados los controladores de UC-Logic para sus tabletas gráficas, veo que a pesar de que la fecha del controlador versión 5.01 es de Agosto de 2007 la versión incluida en el controlador de NGS es la 5.00.

Instalada la nueva versión ha desaparecido tanto el problema de la tardanza excesiva al apagar al apagar el ordenador como la necesidad de pulsar el botón del ratón para activar el movimiento del cursor con el mismo.

Además con esta versión del controlador se han activado unas funciones adicionales de "Tablet PC" que no había advertido con la anterior, como un teclado "dibujado" bajo el diálogo de inicio de sesión y un complemento denominado "Panel de entrada de Tablet PC" parcialmente oculto a la izquierda de la pantalla.

viernes 8 de febrero de 2008

Sobre cómo eliminar miles de mensajes rápidamente en Qmail

Ayer tuve un problema con un servidor dedicado en el que normalmente se usa Plesk para la configuración de los servicios de los dominios alojados en el mismo. Debido a una mala parametrización del servicio de correo (basado en Qmail) para los dominios, se acumularon en el servidor debido a la recepción de correo basura unos 30.000 mensajes (la mayoría eran "bounces" del servidor), con lo que empezó a notarse una excesiva lentitud en el servicio de correo.

Pero claro, en la cola de mensajes del servidor había mensajes que no se podían borrar, así que para ir borrando los mensajes que no interesaban (que eran miles), a falta de una interfaz apropiada en el Plesk tuve que recurrir a la línea de comandos.

Haciendo uso del qmHandle, una utilidad para gestionar la cola de mensajes del Qmail, y seleccionando los mensajes a borrar, fue posible borrar literalmente miles de mensajes en segundos y así aliviar la cola de mensajes del servidor, que aceleró el procesamiento del resto de mensajes.

Estos fueron los pasos que realicé:

  1. Usando el comando /var/qmail/bin/qmail-qread y su salida redirigida a un fichero obtengo la lista de mensajes actualmente en la cola
  2. Sobre este fichero aplico un grep para obtener los mensajes que me interesaba eliminar (por ejemplo, con remitente vacío) y con el comando cut me quedo sólo con el número de mensaje (la salida de este comando también redirigida a otro fichero). Sustituyendo el carácter "#" que precede a este número por los caracteres "-d" (el parámetro eliminar un mensaje en qmHandle)
  3. Finalmente ejecutamos un cat del fichero con los parámetros "-dXXXXXXXX" seguido de un pipe al comando "xargs /root/qmHandle/qmHandle" (la ubicación del qmHandle es arbitraria):
[root@host tmp] # cat mensajes_a_borrar.txt | xargs /root/qmHandle/qmHandle

De esta manera el qmHandle va parando el Qmail y en cada parada elimina el número máximo de mensajes que puede borrar de una vez. Así, como no es preciso parar y arrancar el Qmail para cada mensaje a eliminar el proceso de borrado de mensajes es mucho más rápido.