viernes, 4 de septiembre de 2009

Número máximo de ficheros abiertos en Ubuntu 8.10

Un programa que uso con asiduidad en Linux es rtorrent. Personalmente me parece uno de los mejores clientes Bittorrent de la actualidad.

El caso es que lo tengo configurado para tener un par de miles de conexiones abiertas simultáneamente. Pero el propio sistema operativo me lo limita a un máximo de 1024 ficheros abiertos (ya sabes que en *nix las conexiones son tratadas como ficheros).

Para configurar este máximo, la teoría dice que hay que editar (como root) el fichero /etc/security/limits.conf y poner unas entradas del tipo

*               hard    nofile          5500
*               soft    nofile          5000


Una vez hecho esto, abres una nueva instancia de bash, pones el comando ulimit -a y la salida incluye:

open files                      (-n) 5000

Bien. Funciona. Al menos eso parecía, pero en realidad, si ves el fichero /proc/PID/limits, aparece una línea

Max open files            1024                 1024                 files

lo que es malo, pues me está diciendo que realmente continúa el límite de 1024 ficheros. Y eso me ocurre en rtorrent.

Para aclarar la situación, el rtorrent lo lanzo desde una ventana xterm que a su vez es lanzada desde un terminal Xvnc.

Tras investigar, resulta que el motivo de esta limitación está en el módulo PAM. Dado que vnc no es un servicio reconocido por defecto por PAM, éste no le aplica una coniguración específica, sino la configuración común, la cual no tiene por defecto la inclusión de los límites marcados en /etc/security/limits.conf. la solución que he encontrado es incluir el procesamiento de pam_limits.so en /etc/pam.d/common-session, añadiendo a este fichero la línea

session required        pam_limits.so

jueves, 3 de septiembre de 2009

El origen de Sornak


Como en los comics, hay que esperar algunos números antes de contar el origen del personaje. Muchas veces, cuando digo mi Nick internauta, hay quien pone cara de extrañeza.

En realidad, el motivo de usar este Nick es relativamente simple:

A long time ago yo usaba otro Nick, pero me ocurría a menudo que cuando descubría algún nuevo servicio y quería darme de alta, ése apodo estaba pillado. Y nunca me han gustado cosas del tipo nick72 o similar. Así que decidí que tenía que buscar un nuevo Nick.

Y claro, no iba a ser algo sencillo, para no seguir con el mismo problema. Así que me acordé de los vulcanianos. Todos sus nombres masculinos empiezan por “S” y acaban en “K”. Y quería un nombre con gracia, con “sorna”. Así que lo vi claro: “SORNAK”.

He podido comprobar que no es una palabra muy común que digamos. Tan sólo he visto que exista en húngaro, donde se da con mayor asiduidad. Pero la verdad es que no sé lo que significa. Los diccionarios no la tienen. Creo que es algo del estilo “programa”, pero no estoy seguro.

Si alguien que sepa húngaro lee esto, por favor, que me indique el significado.

Disney compra Marvel

Marvel vs. Disney 
Posiblemente la noticia más importante del mes en el frikimundo es la compra de Marvel por parte del gigante Disney, la empresa especialista en perseguir sus propias prácticas (copia, pero no quiere que le copien).

Personalmente, no me agrada esta absorción. El tiempo dirá si Marvel tiende hacia el ideario Disney (¡Por favor, que no me toquen las colecciones MAX!) o la permiten seguir de forma independiente, al menos en los comics. Aunque yo creo que la compra viene motivada por las películas.


Por otro lado quizá tenga algo bueno, como será tener el mundo Marvel en los DisneyWorld, o mayor cantidad de películas de personajes Marvel (aunque esto me da algo de miedo).

En fin, como dije, el tiempo dirá.

domingo, 30 de agosto de 2009

Mini servidor http con vnc-java en Ubuntu 8.10

Hace algún tiempo, tenía instalado un Linux ejecutando un Xvnc de usuario al que podía conectarme a través del puerto 5810, que cargaba una clase java con el cliente VNC, y me permitía entrar de forma remota en la máquina sin necesidad de instalar ningún cliente VNC en la máquina que estuviera en ese momento.

Posteriormente me instalé un Linux Ubuntu 8.10, y comprobé que esta posibilidad no estaba activada por defecto. Incluso instalando con apt el paquete adecuado: vnc-java.

Investigando un poco, determiné que Ubuntu lanza los servidores VNC desde el servicio "vncserver". Éste servicio lo que hace es leer la lista de servidores a arrancar de "/etc/default/vncservers"  y los va pasando a una instancia de "/usr/bin/vncserver". Éste a su vez es un programita Perl que llama a "Xvnc" son unos determinados argumentos. Para que el mini servidor HTTP esté activo, Xvnc debe recibir como parámetro "-httpd /usr/share/vnc-java/".

El problema es que vncserver busca los directorios "/usr/share/vnc/classes" y "/usr/local/vnc/classes". En caso de encontrar uno de ellos, lo pasa a Xvnc como parámetro de localización del mini-servidor http.

Sabiendo esto, una posible solución es hacer que ése directorio apunte al lugar donde está vnc-java. Así que las órdenes a poner en un shell son:

sudo mkdir /usr/share/vnc
sudo ln -s /usr/share/vnc/classes /usr/share/vnc-java/

Con lo que quedaría creado el directorio que busca vncserver, y en la siguiente ejecución pasaría los parámetros adecuados a Xvnc, con lo que éste levantaría el puerto 5800+nº de display  para servir la clase java del vncviewer.

Para reiniciar vncserver:

sudo service vncserver restart

Espero que a alguien le sirva esto, aparte de mí.

sábado, 29 de agosto de 2009

Empecemos...

Toc, toc.... ¿Hay alguien ahí?

Supongo que lo primero es la declaración de intenciones de este nuevo blog.

Pues... escribir algo de vez en cuando. Respecto a la temática, tampoco tengo nada pensado, así que será unas veces de comics, otras de ordenadores, algunas de Star Trek, y lo que se me ocurra en el momento.