marzo 12, 2015

System program problem detected

Ubuntu ya es un sistema operativo consolidado, pero lleno de bugs sin solución, que los arrastra de versión en versión. Uno de estos bugs son los mensajes de error, los cuales son gestionados por Apport, una herramienta encargada de capturar cualquier error que se produzca en nuestro sistema, recopilando la información relativa a los mismos al momento de producirse, y el usuario decide reportarlos o no. Esto es beneficioso para los desarrolladores, sin embargo a veces puede causar malestar en el usuario, cuando comienzan a aparecer misteriosamente muchos mensajes de error.
El problema radica en el diseño mismo de esta herramienta (que también tiene versión apport-gtk, pero no es muy recomendable porque consume más de la cuenta).
Supongamos que Ubuntu genera un error y nuestro sistema saca el famoso mensaje "Lo sentimos, Ubuntu XX ha experimentado un error interno" (para versiones anteriores a la 14.xx) o "System program problem detected" (para versiones posteriores a 14.xx) y tenemos la opción de pulsar "enviar" (Report problem...)  o "cancelar".
Otro de los mensajes comunes es: "No se escribió ningún informe «apport» porque ya se ha alcanzado el valor de «MaxReports»", el cual se presenta generalmente por dependencias incumplidas, o cuando hay demasiados errores y se llena Apport.
Muchos enviamos estos reportes con la esperanza que Canonical los solucione, pero a veces ni siquiera guardan relación con Ubuntu, sino con aplicaciones de terceros instaladas en nuestro sistema.
Si nos pica la curiosidad, podemos ingresar a la carpeta de errores y verificar los reportes
ls /var/crash
Ahora supongamos que Ubuntu (o la aplicación problemática) saca una actualización que corrige la falla, sin embargo el mensaje de error continúa saliendo cada vez que reiniciamos nuestro sistema. Esto se debe a que Apport está diseñada precisamente para hacer esto. O sea, cada vez que se reinicie, Apport verifica los reportes y si hay alguno, saca nuevamente el mensaje de error, invitando al usuario a enviarlo o cancelar, sin importar que el error o la dependencia incumplida haya sido solucionada. Este "extraño proceder" (o más bien una falla del diseño de la herramienta) puede solucionarse ejecutando la siguiente orden: ojo no confundir con rm -rf / * porque, como root, borra todo su sistema. El parámetro -f es opcional
rm -f /var/crash/*crash
La cual elimina solamente los archivos con extensión .crash que se encuentran en la carpeta /var/crash/ (que son nuestro target)
Automatizando el proceso
También puede ejecutar o programar en el cron (como root) nuestro script FindAndDestroy el cual contiene comandos para eliminar temporales, ADS y otros tipos de archivos, incluidos los reportes de Apport.
Desactivando Reportes
Muchos optan por desactivar Apport. Esto no es recomendable, pero si insiste, detenga el servicio:
sudo service apport stop
Edite el archivo de configuración:
sudo nano /etc/default/apport
o
gksudo gedit /etc/default/apport
Cambie de 1 a 0
# set this to 0 to disable apport, or to 1 to enable it
# you can temporarily override this with
# sudo service apport start force_start=1
enabled=0
Y finalmente inicie Apport
sudo service apport start
Maravento, Actualizado en: 10:10
Escrito por: Maravento Studio
 
© 2017 Maravento. All Rights Reserved | Powered by Maravento
Design by Novatoz and Maravento | Bloggerized By LawnyDesignz
# https://github.com/google/code-prettify