Kernel 2.6 y drivers de nvidia, la revancha

Finalmente volví a los driver abiertos de nvidia, en vez los propietarios. Sólo fue para obtener xvideo, pero estaba funcionando con AGP desactivado. Y xvideo no lo requiero mucho. En mi impresión, el flicker era demasiado.

Después de volver a la normalidad, tuve un par kernel OOPS mientras realizaba fsck. El backtrace mostraba los módulos scsi_mod y usb_core, entre medio un timer de APIC (que estaba deshabilitado en los parámetros del lilo). Pensé en algún problema por el driver del kernel de nvidia (propietario), sin embargo, ya estaba deshabilitado.

Volví a kernel 2.4.22, y desde ahí actualicé actualicé a 2.4.24. Desconfiado por el comportamiento, apliqué «fsck -f» a todos las particiones y la sorpresa la tuve con /usr (con ext3):

# ls -l /usr/lost+found | wc -l
449

Entre los archivos se encuentran tipografías, bibliotecas y mezclas de texto de distintos lados. Con la ausencia de algunas bibliotecas y quizás algunas otras corruptas, comenzaron a falar las aplicaciones, algunas con segfault.

Comencé a buscar aquellas faltantes y reinstalarlas, para después notar que /var/lib/dpkg tenía archivos corruptos. Pude rescatar la lista de paquetes instalados:

# dpkg --get-selections > ~gpoo/recovery/get-selections

Con debootstrap instalé lo mínimo dentro de un directorio, y de allí copié los archivos status y available, para tener información mínima, pero consistente.

# deboostrap sid /home/sid
# mv /var/lib/dpkg ~gpoo/recovery
# cp -a /home/sid/var/lib/dpkg /var/lib
# cat ~gpoo/recovery/get-selections | dpkg --set-selections
# apt-get -o dir::cache::archive=/home/apt dselect-upgrade

Con esto, reinstale todos los paquetes que tenía, y obtuve una base de datos «limpia» de mis aplicaciones instaladas. Algunos paquetes quedaron sin registro, ya que no son oficiales y tendré que instalarlos manualmente.

Tengo fuertes sospechas del módulo de memoria que le instale ayer (256 MiB), y dejaré a memtest trabajando durante el día para verificarlo. Las otras sospechas que tengo es respecto a la madurez del kernel 2.6 respecto a la deshabilitación de APIC en combinación con los drivers (quizás aún no estables) de SCSI y el chipset de mi placa.

Perdí el día. Moraleja: Si algo funciona, no lo repares.