Firefox: Error en el bus. Solución: debsums

Imaxe de oscar
Enviado por oscar en 29 Decembro, 2009 - 14:01.

Puede ocurrir que por algún motivo (caída de sistema, apagón de la luz...) al ir arrancar alguna aplicación (a mi me ha ocurrido con el firefox y con kile) de nuestro SO no arranque y nos aparezca el siguiente error: "error en el bus" o "bus error"

Para que aparezca este error debemos abrir una consola y ejecutar desde ahí el programa y así nos aparecerá el error, sino únicamente veremos que el programa no arranca sin sacar nada

Esto es debido a que alguna librería que usa esta aplicación está corrupta. Para saber cual/es son y así luego poder reinstalarlos y solucionar el problema los sistemas debian poseen un paquete llamado debsums que nos permite verificar los archivos de los paquetes instalados contra MD5 checksums.

oscar@queirolo:~$ apt-cache search -n debsums
debsums - verification of installed package files against MD5 checksums

Instalamos el paquete debsums

oscar@queirolo:~$ sudo apt-get install debsums

Ejecutaremos el comando debsums en modo silencioso ( -s ) y redirigimos la salida a un fichero de texto debsums.txt para luego poder tratarlo

oscar@queirolo:~$ sudo su
root@queirolo:/tmp# debsums -s &> /tmp/debsums.txt

En el fichero debsums.txt tendremos líneas como:

debsums: checksum mismatch gdm file /var/lib/gdm/.gconf.defaults/%gconf-tree.xml

Si nos fijamos el nombre del paquete aparece en la 4 fila ( obtendremos este nombre con el comando cut ) y puede ser que el mismo paquete aparezca varias veces ( obtendremos como salida una única vez con comando uniq ). Pasamos a tratar el fichero debsums.txt y a guardar en otro fichero debsums_reinstall.txt los paquetes que son necesario reinstalar:

root@queirolo:/tmp# cat /tmp/debsums.txt | grep "mismatch"  | cut -d " " -f4 | uniq  > debsums_reinstall.txt

En debsums_reinstall.txt tendremos los paquetes que tendremos que reinstalar. Si son muchos podremos hacer un script que los reinstale todos sin necesidad de ir metiendo el comando para cada uno de ellos:

root@queirolo:/tmp# apt-get install --reinstall `(cat debsums_reinstall.txt)`

Referencias: https://bugs.launchpad.net/ubuntu/+bug/133786

 

Espero que vos serva de axuda,
Óscar Casal Sánchez


Imaxe de Miguel

Moi bo

Probeino e dime que teño tres paquetes de software, gdm, openoffice.org-common e  gnome-pilot que non concordan ca suma MD5 que deberían ter. Curiosamente nunca me deron ningún problema, pero de todolos xeitos reinstaleinos non vaian a ser as meigas :-p.

 

Un día destos creo que me vou a facer un mini script para comprobar o estado de sistema cada n-días e que me avise se atopa algo raro. Un día destos.

 

Graciñas polo consello, e por suposto que teñas un moi, moi feliz e libre 2010.

Imaxe de oscar

As veces pois non é

As veces pois non é importante e non nos damos conta de que algún dos ficheiros instalados dese paquete están tocados. Eu noteino porque xa directamente non arrincaban

Bo 2010 tm pra ti e a ver se nos vemos que xa hai moito, sigues con pelo XD

Imaxe de Miguel

Integrar o script no Synaptic?

Pensando un pouco un script con esta función debería estar dispoñible no Synaptic, ou en calquera outro xestor de paquetes de turno. Creo que non debería dar demasiado traballo e faría un gran servicio, sobre todo se ten asociado algunha notificación e configuración na que decidir o intervalo de tempo para facer as revisións.

Desfruta ti tamén do 2010, este ano teño o bo propósito de quedar algo máis cos amigos, que vos teño moi abandoados. Verémonos :).