GNU/Linux, Viajes, Naturaleza, Gastronomía, Música y lo que se tercie

¡Error!: blk_update_request: I/O error, dev fd0, sector 0. No hay que alarmarse porque tiene fácil solución.

blk update request I/O error dev fd0 sector 0

El error “blk_update_request: I/O error dev fd0 sector 0” demora tremendamente el arranque en las distribución GNU/Linux. El motivo por el que surge me da la impresión que puede ser muy diverso. A mi se me presentó hace unos días en Debian Stretch. Estuve buscando en internet y finalmente utilice un procedimiento simple que encontré en https://support.quest.com/kb/205943. Lo he aplicado y problema resuelto. Así que lo expongo, por si a alguien que pase por aquí le pueda ser útil.

1. ¿Cómo me surgió el error?

Por si puede ser de interés comentaré primero cómo creo que me surgió el error. Fue en Debian Stretch y justo después de instalar en otra partición Debian Testing. Sólo tengo una partición swap que es compartida por las distribuciones que tengo instaladas. Yo diría que el motivo fue que durante la instalación de Testing no deshabilite por despiste el formateo de la partición swap. Y así lo creo porque al arrancar Debian Stretch me encontré con dos errores:

Primero: [16.6789] blk_update_request: I/O error, dev fd0, sector 0. Que es el objeto de este artículo.

Y segundo, otro que ya tengo controlado y relacionado con la partición swap. Este lo tenemos documentado en el blog:

A start job is running for dev-disk-by ……device (1 min 30s)

Ahora bien, no me pregunten cuales son los mecanismos que llevan a que se produzca el error de marras. No tengo ni idea.

2. ¿Cuál es el problema?

Al parecer, al arrancar la computadora el núcleo (kernel) detecta erróneamente que existe un dispositivo floppy (el antiguo disquete), o simplemente crea una referencia inexistente, porque mi computadora no tiene en realidad esta unidad. El programa de administración de discos entonces busca en los dispositivos de bloques disponibles, con la consiguiente demora en el arranque del sistema operativo.

Podemos comprobar si este es el problema con el siguiente comando:

# lsmod | grep -i floppy

La salida será, si es el caso, algo así como: floppy       95465 0

3. ¿Cuál es la solución a ese error dev fd0 sector 0?

Como mi computadora no tiene unidad de disquete (que puede ser también el tuyo), lo que corresponde, y así se recomienda, es eliminar y poner en la lista negra del núcleo el módulo correspondiente al floppy, con objeto de que no interfiera en el futuro.

3.1 En distribuciones Debian/Ubuntu

Todos los comandos los tenemos que ejecutar como superusuario (su) o como usuario con privilegios de root (sudo)

1) Eliminamos el módulo (controlador) correspondiente al disquete en el kernel

# rmmod floppy

2) Creamos el archivo blacklist-floppy.conf en /etc/modprobe.d/ con la línea de texto blacklist floppy, mediante la siguiente línea de comandos:

# echo "blacklist floppy" > /etc/modprobe.d/blacklist-floppy.conf

Nota: La inclusión de un módulo (floppy, en este caso) en un archivo blacklist (blacklist-floppy.conf) evita que se cargue en el arranque.

blacklist-floppy.conf

3) Hacemos una copia de seguridad de initrd.img (que sera algo así como initrd.img-4.9.0-5-amd64, aunque esto lo averigua “uname -r”) que está en /boot/; por lo que pueda pasar, pero nada debe pasar:

# cp /boot/initrd.img-$(uname -r) /boot/initrd.img-$(uname -r).backup

Nota: El disco RAM inicial o initrd es un sistema de archivos temporal usado por el núcleo Linux durante el inicio del sistema. Es usado para hacer los arreglos necesarios antes de que el sistema de archivos raíz sea montado (https://es.wikipedia.org/wiki/Initrd).

4) Actualizamos initramfs

# update-initramfs -u

5) Reiniciamos y comprobamos que no se muestra el error. Ahora, si es así, el arranque del sistema será veloz como el rayo (al menos en Debian):

# reboot

3.2. En otras distribuciones

Según la web que consulté, para las distribuciones siguientes sólo cambia el comando del punto 4) que en:

SLES (SuSE Linux Enterprise Server)

# mkinitrd

CentOS/RHEL (Red Hat Enterprise Linux)

# dracut -f /boot/initramfs-$(uname -r).img

Yo tomo buena nota de SLES, ya que utilizo también openSUSE y, bueno, siempre me puedo topar con esta eventualidad. No obstante, si algunas de estas distribuciones es tu caso visita https://support.quest.com/kb/205943

Saludos flamencos,

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.