Debian Sources List Generator. Interesante servicio online

Una duda muy común en los que empiezan es “¿Qué repos incluyo en mi sources.list?. Bien, ya hemos hablado en alguna ocasión del tema y hoy os quería recomendar una herramienta vía web que os puede solventar muchas dudas respecto al tema.

Se trata de “Debian Sources List Generator“, ahí además de los repositorios habituales, podéis escoger otros (tanto free como privativos) de Google, Skype, Wine, multimedia, etc. Hablando de los “principales”, yo suelo usar (en este caso Sid / “unstable”);

deb http://ftp.debian.org/debian sid main contrib non-free
deb-src http://ftp.debian.org/debian sid main contrib non-free

O en su defecto de Finlandia, que van muy rápido;

deb http://ftp.fi.debian.org/debian/ testing main contrib non-free
deb-src http://ftp.fi.debian.org/debian/ testing main contrib non-free

Aquí una captura de pantalla

Sources List

Y no olvidéis que si estáis bajo Debian “Sid” no hay que meter “Security”. Saludos !

a vueltas con LDAP – txn_checkpoint failed: Invalid argument (22)

Esta mañana me he encontrado con que el servidor LDAP no funcionaba. Tras un vistazo rápido al log del sistema (/var/log/syslog) me he encontrado con este mensaje, ideal para despertar a dormidos. He puesto en negrita la parte más importante del informe de fallo, IMHO.

Apr 26 09:08:21 mestizo slapd[19794]: @(#) $OpenLDAP: slapd 2.4.25 (Apr 11 2011 22:16:45) $#012#011buildd@biber:/build/buildd-openldap_2.4.25-1-i386-4ptz56/openldap-2.4.25/debian/build/servers/slapd
Apr 26 09:08:21 mestizo slapd[19795]: bdb(dc=midominio,dc=net): Build signature doesn’t match environment
Apr 26 09:08:21 mestizo slapd[19795]: hdb_db_open: database “dc=midominio,dc=net” cannot be opened, err -30971. Restore from backup!
Apr 26 09:08:21 mestizo slapd[19795]: bdb(dc=midominio,dc=net): txn_checkpoint interface requires an environment configured for the transaction subsystem
Apr 26 09:08:21 mestizo slapd[19795]: bdb_db_close: database “dc=midominio,dc=net”: txn_checkpoint failed: Invalid argument (22).
Apr 26 09:08:21 mestizo slapd[19795]: backend_startup_one (type=hdb, suffix=”dc=midominio,dc=net”): bi_db_open failed! (-30971)
Apr 26 09:08:21 mestizo slapd[19795]: bdb_db_close: database “dc=midominio,dc=net”: alock_close failed
Apr 26 09:08:21 mestizo slapd[19795]: slapd stopped.

Del servidor de LDAP, slapd, hay poco malo que decir. Funciona rápido y bien, sobre equipos con pocos recursos y no lo canibaliza en exceso, cosa de agradecer. Pero sí se puede pensar que es muy propenso a fallos en cuanto se actualiza algo, lo más mínimo, que toque tangencialmente el servidor. En ese momento, deja un montón de literatura en los ficheros de registro y se detiene.

Tras dos minutos de búsqueda (otras caídas súbitas del servicio me han enseñado a buscar bien y rápido), apareció la respuesta. Todo pasaba por reparar la base de datos del servidor, que ha quedado inconsistente. Más claro, en comandos:


$ sudo /etc/init.d/slapd stop
$ cd /var/lib/ldap
$ sudo db4.8_recover
db4.8_recover: Build signature doesn't match environment
$ sudo /etc/init.d/slapd start

¡Listo! Como si no hubiese pasado nada.

cierra news.debian.net

A casi le sonará, como sucede con la mayoría de servicios alojados en debian.net, pero el servicio de noticias relacionadas con la comunidad cierra. En un escueto mensaje publicado ayer, anunciaban que el servicio cierra tras diecinueve meses de actividad y que pasará a ser una página estática.

Personalmente pienso que es una pena, que la información que daba este servicio, aunque distanciada en el tiempo, era de calidad y, sobre todo de primera mano, desde dentro del proyecto Debian. Sólo hay que recordar el seguimiento que hicieron del lanzamiento de squeeze, durante varios días y aportando datos de la liberación.

Lamentablemente me estoy acostumbrando a ver cómo los servicios lanzados desde debian.net duran unos meses y pasan a ser webs estáticas. Supongo, aunque no me gusta, que ya nacen con el estigma de ser minoritarios y con un determinado tiempo de actividad.

[short] preguntando a debian

Logo Debian Hackers Short

La gente de Debian sigue añadiendo servicios a su ya extensa lista y esta vez sorprenden (al menos a mí) con una web donde dejar y responder preguntas. En Debian Q&A uno puede preguntar sobre cualquier tema relacionado con la distribución, ya sea acerca cual es el mejor reproductor de sonido, lo primero que se hace nada más instalar un sistema o algo más productivo, como una lista de hardware compatible.

También se pueden votar las respuestas, tanto afirmativa como negativamente y, algo que cada vez me gusta más, no es necesario crear un usuario (otro más) para hacer uso del servicio porque cuentan con la colección de proveedores de identidad más grande que he visto hasta la fecha.

Un servicio, otro más, que supongo vendrá a rellenar el hueco dejado por las listas de correo de la comunidad y los LUG’s de los noventa, donde uno podía encontrar (y apabullar a preguntas) a su gurú de turno. Yo, por lo pronto, ya ando dando consejos gratis. :)

Recuperación de slapd (Program version 4.8 doesn’t match environment version 4.7)

Utilizo slapd para dar un servicio de directorio, la clásica agenda de contactos con email, teléfono y demás. Hace algunos años, cansado de tener que pasar de una a otra herramienta de gestión de contactos, según cambiaba de programa de correo (de mutt a pine; de pine a evolution; de evolution a thunderbird), decidí quedarme en el punto intermedio de todos ellos y, tras investigar un poco, éste resultó ser OpenLDAP.

Crear una estructura de directorio es sencillo (forat, cúrrate un howto ;) ) y muy útil. Como, además, el servicio lastra muy poco el equipo donde está alojado, puede funcionar en máquinas no muy potentes, como es mi caso. A cambio, dispondremos de una agenda de contactos rápida, accesible desde la mayoría de clientes de correo (incluso Outlook Express) y fácil de gestionar y mantener. En mi caso era así, hasta hoy.

Hay ciertos servicios que, una vez los pones a funcionar, dejas de pensar en ellos y únicamente los utilizas, los conviertes en rutina. Por eso, cuando fallan (porque nada es infalible), la sensación de estupor es grande y no sabes por dónde empezar la batalla.

Hace dos días, slapd decidió no arrancar más tras una actualización del equipo. El error que aparecía en syslog era bastante feo, llegando a mencionar el sacrosanto backup, toda una osadía, en mi opinión.

slapd[18614]: backend_startup_one: starting "dc=midominio,dc=net"
slapd[18614]: bdb_db_open: database "dc=midominio,dc=net": dbenv_open(/var/lib/ldap/midominio.net).
slapd[18614]: bdb(dc=midominio,dc=net): Program version 4.8 doesn't match environment version 4.7
slapd[18614]: bdb_db_open: database "dc=midominio,dc=net" cannot be opened, err -30971. Restore from backup!

Tras bucear un rato por internet (aquí y aquí) entendí que las bases de datos que utiliza slapd tenían el formato Berkeley DB version 4.7 y, desde la última actualización, debían tener el formato Berkeley DB version 4.8. Para pasar de un formato a otro hacen falta un par de paquetes, uno por cada versión de la base de datos con que vamos a trabajar. Se instalan:

$ sudo aptitude install db4.7-util db4.8-util

El directorio de las bases de datos está definido en el fichero de configuración de slapd (/etc/ldap/slapd.conf) pero, por defecto es /var/lib/ldap/midominio.net. Todas las modificaciones se harán sobre ese directorio y es conveniente, como siempre, hacer una copia de seguridad de los ficheros que vamos a tocar porque esta solución salió al tercer intento.

Lo primero es eliminar toda referencia a la versión 4.7 en los ficheros:

# db4.7_checkpoint -1 # escribe las transacciones pendienes
# db4.7_recover # deja la base de datos en un estado consistente

Y, una vez hecho esto, falta por restaurar la base de datos con la nueva versión del entorno, algo así como la nueva versión del gestor.

# db4.8_recover -e

Como los ficheros que se han tocado no pertenecen al programa que los va a usar, retoco permisos y propietario:

# chown openldap:openldap *
# chmod 600 *

Y, al reiniciar de nuevo slapd, funciona sin más problemas.