modificacion de iso ubunutu 910

— [ edit | raw ] migrated from node/1271
hola me presento, mi nombre es John Reveco y soy estudiante de ing. en redes y comunicaciones en ipchile, santiago de Chile.

500 euros para el mejor software libre de 2009

— [ edit | raw ] migrated from node/1269
Acaban de iniciarse los Premios PortalProgramas al Mejor Software Libre 2009. El proyecto ganador recibirá una donación de 500 euros para impulsar su desarrollo.

Manifiesto en defensa de los Derechos Fundamentales en Internet

— [ edit | raw ] migrated from node/1268
Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de internet manifestamos nuestra firme oposición al proyecto, y declaramos que...

Creación de un plugin de munin para mldonkey

— [ edit | raw ] migrated from node/1265
Munin es una herramienta de monitorización que recopila multitud de datos del sistema y los presenta en forma de gráficas incrustadas en una página web. La gran virtud de munin es su extrema sencillez a la hora de instalarlo y configurarlo. Trae de serie una grandísima cantidad de plugins para monitorizar casi cualquier variable del sistema. En esta receta veremos que también es extremadamente sencillo crear nuevos plugins para munin. Como ejemplo crearemos un plugin para monitorizar el consumo de ancho de banda de la aplicación mldonkey.

Cómo crear un plugin para munin

Si conocemos un poco de lenguages de script y la naturaleza de los datos que queremos monitorizar, crear un plugin para munin es algo muy sencillo.

Obtención de los datos

Para el caso de mldonkey, utilizaremos el programa mldonkey_command que puede encontrarse en /usr/bin o bien en /usr/lib/mldonkey/. Este programa se conecta mediante telnet al servidor de mldonkey y ejecuta el comando que le pasemos como argumento. Para obtener los valores de velocidad de subida y descarga en ese mismo instante hay que utilizar el comando bw_stats. En el siguiente ejemplo veremos la salida que produce la ejecución:

$ /usr/lib/mldonkey/mldonkey_command -p "password" bw_stats
> bw_stats
Down: 11.4 KB/s ( 64 + 11592 ) | Up: 9.9 KB/s ( 17 + 10118 ) | Shared: 1118/98.95G | Downloaded: 33.7M | Uploaded: 52.1M
MLdonkey command-line:
>

Los datos que queremos monitorizar están ahí, tan solo tenemos que limpiar un poco el texto. Utilizaremos los comandos grep y cut. Por supuesto cada uno puede utilizar lo que mejor sepa usar. Estos son los filtros que usaré para obtener cada una de las cifras:

$ /usr/lib/mldonkey/mldonkey_command -p "" bw_stats | grep ^Down | cut -d "|" -f 1 | cut -d " " -f 2
11.4
$ /usr/lib/mldonkey/mldonkey_command -p "" bw_stats | grep ^Down | cut -d "|" -f 2 | cut -d " " -f 3
9.9

Con esto ya sabemos como obtener los datos en bruto. Para que munin acepte estos valores tan solo tendremos que ofrecérselo de una forma algo estructurada. Algo así:

$ echo "download.value " -n; /usr/lib/mldonkey/mldonkey_command -p "" bw_stats | grep ^Down | cut -d "|" -f 1 | cut -d " " -f 2
download.value 11.4
$ echo "upload.value " -n ; /usr/lib/mldonkey/mldonkey_command -p "" bw_stats | grep ^Down | cut -d "|" -f 2 | cut -d " " -f 3
upload.value 9.9

Aquí observamos que creamos una especie de variable e invocamos su atributo valor, asignándole el dato que hemos leído. Ya tenemos lo complicado del script. El resto es tan solo dar formato a los datos.

La confiuración del plugin

Para que munin sepa mas acerca de la naturaleza de los datos, así como información mas detallada de la representación gráfica, debemos proporcionarsela en nuestro script. Munin lo hace invocando el plugin con el argumento config. En ese momento deberemos imprimir por pantalla las opciones de configuración. Para nuestro plugin serán las siguientes.

graph_title MLDonkey traffic: Indica que el título de la gráfica será MLDonkey traffic. graph_info This graph shows MLDonkey DL/UL rates.: Es una breve descripción de lo que representa la gráfica. graph_category mldonkey: Con esto indicamos que nuestra gráfica estará en una categoría llamada "mldonkey". Podríamos perfectamente ubicarla dentro de la categoría "Network". graph_order upload download: Indica el orden de las variables. graph_args -l 0 --base 1024: Indicamos que el valor mínimo es 0 y que las medidas serán en múltiplos de 1024. graph_period second: Indicamos que el periodo de medición de la gŕafica será el segundo. Eso significa que el valor en bruto que obtenemos es la velocidad medida en ese preciso instante. graph_vlabel bytes per ${graph_period}: Esta es la etiqueta que utilizamos para indicar en que unidades se mide el eje vertical. Como se ve, medimos en bytes por segundo.

Ahora, para cada una de las variables, debemos ajustar algunos parámetros. Como se vio anteriormente, la lectura de velocidad que ofrece el servidor de mldonkey, pero nosotros queremos representarlo en bytes por segundo. Para convertir el dato no es necesario modificarlo en el script, munin lo puede hacer por nosotros. Estos son los datos de configuración para cada variable.

download.label download speed: Esto sirve para darle un nombre descriptivo a la variable. download.max 50000: Con esto establecemos un valor máximo. 50.000 bytes por segundo parece un buen valor. download.min 0: Este es el valor mínimo que puede alcanzar la variable. download.cdef download,1024,*: Por último, multiplicamos la lectura por 1024 para obtener el valor en bytes, ya que el servidor de mldonkey nos da el valor en KB, que asumiremos que se trata de KiB. Con la variable upload haremos exactamente lo mismo. Y con esto ya tenemos toda la información necesaria para montar nuestro plugin.

El plugin completo en un script

Tan solo nos resta meter todo lo dicho antes en un script, mas alguna cosa mas que se explicará posteriormente.
#!/bin/sh

if [ "$1" = "autoconf" ]; then
    if [ -z "/usr/lib/mldonkey/mldonkey_command" ]; then
        echo "$0: error: mldonkey_command not installed"
        exit 1
     else
        echo yes
        exit 0
     fi
fi

if [ "$1" = "config" ]; then
    echo "graph_title MLDonkey traffic"
    echo 'graph_info This graph shows MLDonkey DL/UL rates.'
    echo 'graph_category mldonkey'
    echo "graph_order upload download"
    echo 'graph_vlabel bytes per ${graph_period}'
    echo 'graph_args -l 0 --base 1024'
    echo 'graph_period second'

    echo 'download.label download speed'
    echo 'download.max 50000'
    echo 'download.min 0'
    echo 'download.cdef download,1024,*'

    echo 'upload.label upload speed'
    echo 'upload.max 50000'
    echo 'upload.min 0'
    echo 'upload.cdef upload,1024,*'
    exit 0
fi;

MLBW=$(/usr/lib/mldonkey/mldonkey_command -p "" bw_stats 2> /dev/null | grep ^Down)

if [ $? -eq 0 ]; then
   DOWN=$(echo $MLBW | cut -d "|" -f 1 | cut -d " " -f 2)
   UP=$(echo $MLBW | cut -d "|" -f 2 | cut -d " " -f 3)
else
   DOWN=0;
   UP=0;
fi

echo "download.value $DOWN"
echo "upload.value $UP"

Cuando el script se invoca con el parámetro autoconf el plugin comprueba que tiene todo lo necesario para ejecutarse. En el segundo bloque viene todo lo explicado anteriormente, que no es mas que una enumeración de todos los parámetros de la gráfica. Muchos de esos valores son opcionales y no dudes en jugar con ellos hasta dar con los mas adecuados. Puedes consultar una referencia completa de todos los argumentos en [3]. Al final se ve que el plugin solo se limita a imprimir las variables con los valores de la forma que se explicó al principio de la receta. Sólo nos quedaría grabar el script en un fichero, darle atributos de ejecución, grabarlo en /etc/munin/plugins y reiniciar el demonio munin-node.

Referencias

[1] How To Write Munin Plugins [2] Plugins de munin para aMule (este plugin está basado en él) [3] Todos los parámetros de una grafica

Concentrador OpenVPN en Debian GNU/Linux (o Ubuntu)

Cómo interconectar dos redes inaccesibles entre sí ya sea porque ambas están detrás de NAT o por consecuencias de las nuevas e incomprensibles «políticas de seguridad» de la empresa.

Creación de un módulo Drupal

— [ edit | raw ] migrated from node/1264
Atención: Este artículo se ha copiado de la web de MagMax(que es su autor). Es posible que sufra cambios. Podéis encontrar la última versión de este artículo en su ubicación original. Muchas gracias.

Al parecer, utilizar GNU/Linux es delito en la Universidad de Boston

— [ edit | raw ] migrated from node/1262
Via Linked In me ha llegado esta noticia que pone de manifiesto la urgente necesidad de crear una especialidad en nuevas tecnologías para la carrera de derecho. Al parecer, utilizar GNU/Linux es delito en la Universidad de Boston (a.k.a. lo que no conozco o no entiendo, es malo)

Maneras de indentar

— [ edit | raw ] migrated from node/1260
Perdón si a alguien le resulta offtopic. Buscando unas cosas que no vienen al cuento me he encontrado un resumen de estilos de indentación. Simplemente me ha parecido curioso y he decidido ponerlo aquí para compartirlo y tenerlo localizado. Cheers.

El Supremo de EE UU decide qué invenciones son patentables

— [ edit | raw ] migrated from node/1259
Según leo en elpais.com, vía barrapunto, en EEUU será el tribunal supremo quien decida si un invento podrá patentarse o no. Y atentos, que esta decisión no afecta sólo a las futuras patentes, sino también a las ya existentes. Aunque dudo mucho que le quiten alguna patente al maligno, por ejemplo.