Ahorro de energía eléctrica

Nuestro gobierno ha decretado el «plan coyuntural de ahorro de energía eléctrica para reducir consumo«, debido a que, como dice el propio decreto, las centrales hidroeléctricas han reducido su producción energética a su mínimo histórico…. o sea que está seca la cosa.

Con el fin de adaptar los PC de escritorio a condiciones de bajo consumo, se decidió que cuando no sea usado se apague el monitor a los 2 minutos, el disco a los 9 y suspender todo el PC a los 10. El problema es configurar esto en más de 150 PC distribuídas en varios pisos, por lo que cree el script que aquí publico.

La idea es un script para ejecutar en el $HOME/.profile de cada usuario cuando ingresa al sistema y distribuirlo mediante puppet a cada una de las PC de escritorio.

Aun estamos en pruebas de usabilidad de los resultados de la aplicación de estas medidas, para establecer las políticas de soporte, así que hay posibilidades de cambios y/o correcciones. Y, en todos los casos, sugiero que quién lo quiera usar haga sus propias pruebas:

#!/bin/sh
# Configuración para ahorro de energía para aplicar en Gnome2/Ubuntu-10.04
# 2 minutos apaga monitor
# 9 minutos apaga disco, 10 minutos suspende PC

GC=/usr/bin/gconftool-2
B=/apps/gnome-power-manager

#########
# DISCO #
#########
# Activar modo bajo consumo cuando está conectado AC
$GC –type bool -s $B/disks/spindown_enable_ac true

# Segundos de inactividad para reducir velocidad de rotación en AC
$GC –type init -s $B/disks/spindown_timeout_ac 1120

###########
# MONITOR #
###########
# Evita pedir clave cuando apaga monitor
$GC –type bool -s /apps/gnome-screensaver/lock_enabled false

# Tiempo de reposo cuando está en AC
$GC –type init -s $B/timeout/sleep_display_ac 120

# Brillo del monitor
$GC –type bool -s $B/backlight/idle_dim_ac true
$GC –type init -s $B/backlight/brightness_ac 80

######
# PC #
######
# Tiempo para reposo de la computadora
$GC –type init -s $B/timeout/sleep_computer_ac 1200

exit 0

Si tienen sugerencias, adelante con los comentarios!

Foto: senza_nick

rrdtool: This RRD was created on other architecture

Recién acabo de migrar un servidor backuppc de una máquina a otra. Toda la migración funcionó perfectamente, excepto que la interfaz web dejó de mostrar las gráficas de la página de «Status» del backuppc.

Encontrar el problema fue seguir el código de la página web donde debía incluir la imagen, pero por línea de comando:

# su www-data
$ cd /usr/share/backuppc/cgi-bin
$ ./index.cgi image=4
Content-type: image/png

ERROR: This RRD was created on another architecture
$

Encontré la ayuda en el blog de Tyler J. Wagner, que en forma general traduzco aquí.

El error es auto-explicativo: el cambio de máquina lo hice cambiando la arquitectura de i386 a amd64 y las bases de datos de rddtool son dependientes de la plataforma, por lo que necesitan ser reconvertidas.

Backuppc

El error puede ser visto con:

# cd /var/lib/backuppc/log
# rrdtool info pool.rrd
ERROR: This RRD was created on other architecture

En el servidor anterior con arquitectura i386, correr:

rrdtool dump pool.rrd > pool.xml

Si no lo tienes disponible, pues busca cualquier computador i386 para hacerlo.

Luego pasar el archivo resultante al nuevo servidor con arquitectura amd64 y ejecutar:

rrdtool restore -f pool.xml pool.rrd

Y revisar el resultado:

# rrdtool info pool.rrd
filename = «pool.rrd»
rrd_version = «0003»
step = 86400
last_update = 1337840966
header_size = 592
ds[ckb].index = 0
ds[ckb].type = «GAUGE»
ds[ckb].minimal_heartbeat = 172800
ds[ckb].min = 0.0000000000e+00
ds[ckb].max = NaN
ds[ckb].last_ds = «1037060164»
ds[ckb].value = 2.4231947792e+13
ds[ckb].unknown_sec = 0
rra[0].cf = «AVERAGE»
rra[0].rows = 1400
rra[0].cur_row = 0
rra[0].pdp_per_row = 1
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 0

Cacti

Cacti tiene muchos archivos rrd, por lo que es necesario exportar con un loop:

for i in *.rrd; do rrdtool dump $i > $i.xml ; done

E importar con otro:

for i in *.xml; do rrdtool restore -f $i `basename $i .xml`.rrd ; done

En todos los casos, no hay que olvidarse de revisar los permisos y el dueño de los archivos, para que la aplicación siga funcionando correctamente.

Los archivos XML pueden ser eliminados.

Artículo original de Tyler aqui (en Inglés).

Procesar correos en Maildir: cleanup-maildir

Cuando se guardan los correos electrónicos en un servidor en formato Maildir, cada correo es guardado en un archivo; a diferencia del formato Mbox donde todos los correos están en un único archivo.

Muchas veces es necesario «limpiar» correos viejos, a veces en forma periódica (en el crontab) o a veces a pedido («borrar mensajes del año pasado») y ponerse a buscar en carpetas de Maildir y mantener la estructura es difícil. Ahi es donde la utilidad cleanup-maildir es útil.

Cleanup-maildir es un script escrito en Python que mediante parámetros permite, a partir de la antiguedad de los correos, borrar viejos mensajes, moverlos a la papelera o archivarlos en carpetas Maildir para que sigan siendo accedidos.

Ejemplos:

Guardar todos los mensajes con más de 150 días de antiguedad en la carpeta ‘Enviados’:

cleanup-maildir --age=150 archive 'Enviados'

este comando se utilizará $HOME/Maildir del usuario que ejecuta el cleanup-maildir.

Borrar mensajes en el Maildir actual con más de 60 días:

cleanup-maildir --age=60 delete ''

Archivar los correos de un usuario determinado que tengan más de 3 meses en carpetas anuales llamadas, por ejemplo, Guardado.2012:

cleanup-maildir --age=90 --archive-folder=Guardado --archive-hierarchy-depth=1 --maildir-root='/home/usuario/.Maildir' archive ''

en estos casos, se debe recordar que las carpetas nuevas creadas quedarán con dueño y permisos de quién corre cleanup-maildir, por lo que un chown suele ser necesario.

Referencia: Leer un artículo completo sobre cleanup-maildir.

Respaldando la tabla de partición

Respaldar la tabla de partición de un disco permite jugar con el disco y luego poder recuperar su estructura original. Ya en mi viejo artículo «Respaldando particiones enteras del disco» se explica cómo hacer esto, pero me pareció bueno tener un artículo específico y sencillo.

Opción dd

Respaldar la tabla de partición:

dd if=/dev/sda bs=512 count=1 of=sda_tabla_particion.dd

Conviene guardar una versión fácil de leer:

fdisk -l /dev/sda > sda_tabla_particion.txt

Y para recuperar la tabla al disco:

dd if=sda_tabla_particion.dd of=/dev/sda

Opción sfdisk

Respaldar tabla de partición:

sfdisk -d /dev/sda > sda_tabla_partición

(ventaja: el dump de sfdisk es comprensible por el ser humano)

Recuperar tabla al disco:

sfdisk /dev/sda < sda_tabla_partición

Para ver cómo respaldar los datos de las particiones, referirse al artículo «Respaldando particiones enteras del disco»

Foto: Dread Pirate Jeff

Ilusiones ópticas

Las ilusiones ópticas andan por la red de un lado para otro; hay que reconocer que son interesantes. Algunas tienen clara explicación, otras hay que documentarse un poco para encontrarles su razón. En fin, creo que podemos compartir una admiración por ellas.

Encontré este video con una buena colección de ilusiones ópticas, bastante entretenido, como para que los diez minutos que dura, se te pasen volando.

(ponlo en pantalla completa y diviértete!)

Conoces sitios con colecciones u otras ilusiones ópticas buenas, déjalas en los comentarios.

Corre y arriba lleva un pinguino

El nuevo Cadillac XTS que verá la luz en el 2013 está en mi wishlist (mi cumpleaños en en diciembre, igual espero unos meses por el regalo!)

Photo by Cadillac

Este gadget tendrá un computador de abordo con triple-core ARM 11 y dos pantallas, una de ocho pulgadas capacitiva sensible al tacto y una segunda de 12.3 pulgadas con el sistema de instrumentos completamente personalizable detras del volante. Dos de los cores del procesador están dedicados a atender comandos de voz.

Photo by Cadillac

Pero tal vez, lo que más me tienta no es el tapizado de cuero ni la iPad que trae de regalo (… si! vendrá con una incluída) sino que la posibilidad de tener a Linux moviendo todos esos sistemas. Yo ya me veo con un Cadillac-brick en el garage por haber hecho mal algún flasheo, aunque eso será motivo de otro artículo.

Mientras tanto, dejo por aqui algunos videos, como para ir haciéndose a la idea:

Lo vi en el Artículo original de Wired/Autopia.

Por si el entusiasmo los embarga y quieren ir reservando el suyo, les dejo la página oficial de Caddillac donde lo pueden adquirir a partir de US$ 44.075, aunque yo recomiendo la versión Premium que viene con un centro multimedia integrado en el sistema central de navegación y un sistema Studio Surround Bose® de 14 parlantes, ah! y climatizador automático de tres zonas, pa no tener que discutir por la temperatura… ah, si… un poco más: US$ 55.505.

Virtualización con Software Libre, en el camino hacia la nube

Virtualización es un concepto que “está de moda”, pues es un término de moda junto al concepto de consolidación, que ha encontrado tierra fertil en los recursos de CPU y memoria que cuentan los equipos actuales. No obstante ello, virtualización es un concepto que se remonta a los orígenes de la computación, cuando los recursos eran escasos (para los estándares actuales) y más aún, existen diferentes paradigmas para virtualizar que traerán mejoras a la hora de implantar soluciones. Conocerlos y aplicar la solución adecuada a nuestras necesidades es lo que es lo que busca esta presentación. Bajo licenciamiento de Software Libre se desarrollan varios software que atienden a uno u otro paradigma, de forma que el administador del datacenter puede optar entre varias soluciones. Y lo mejor de todo, puede ser el puntapié inicial para llevar nuestro datacenter a una infraestructura de nube…. si, también con herramientas de Software Libre.

Público Objetivo: Administradores de centros de datos, gerentes en el área de tecnologías de la información, técnicos en informática.

Requisitos: Conocimiento en redes, sistemas operativos.

Conferencia dictada en:

  • 11 may 2012 – Avanza 2012 – Complejo torre de las Comunicaciones, Montevideo, Uruguay

Licencias de software, esos documentos con letra menuda

El software encuentra protección legal en la legislación sobre Derechos de Autor, lo que convierte al software en una obra para la Ley, y no es producto, como se suele tratar en el mercado. El software como obra tiene algunas características que lo hacen particular frente a otras obras que también están protegidas por Derechos de Autor. Mientras la Ley otorga protección, el Licenciamiento define las particulares condiciones en que una obra sale del dominio del autor, para llegar al dominio del consumidor, del usuario. Las particulares características del software como obra producen concecuencias directas en el usuario cuando éste adquiere distintos tipos de licenciamiento. Por otro lado, la creatividad como actividad humana encuentra un incentivo en esas condiciones que quedan limitadas por la Ley y los Licenciamientos.

Público Objetivo: Personas vinculadas con los Derechos de Autor (autores, distribuidores, editores, etc.), abogados, desarrolladores de software, distribuidores de software, tomadores de decisión para incorporación de software. Futuros desarrolladores o ingenieros de software.

Requisitos: No.

Conferencia dictada en:

  • 10 may 2012 – Avanza 2012 – Complejo torre de las Comunicaciones, Montevideo, Uruguay

Avanza 2012 Conferencia Internacional de Software Libre y Código Abierto

Durante los días 9, 10 y 11 de mayo se realiza el evento Avanza2012, Conferencia Internacional de Software Libre y Código Abierto en el centro de exposiciones de ANTEL.

En el evento estaré presentando dos temáticas:

El evento está organizado por Antel, la empresa estatal de comunicaciones, lo que a mi entender le da una relevancia importante, pues es la primera vez que un organismo estatal encara un evento de Software Libre.

Personalmente me permitirá volverme a encontrar Maddog y otros amigos y conocer a más gente que le pone el hombro a esto del Software Libre, de todos los cuales siempre aprendo.

Dejo algunos enlaces a videos: