Solución a: «Input/output error» en Linux
Hay errores de Linux que no dejan demasiado margen para la tranquilidad. Uno de ellos es «Input/output error».
Puede aparecer cuando intentás copiar archivos, acceder a un disco externo, abrir un pendrive o incluso ejecutar alguna operación sobre una partición.
Un ejemplo típico sería:
cp: error reading 'archivo': Input/output errorO también:
Input/output errorLo importante es no sacar una conclusión demasiado rápido. Este mensaje no significa automáticamente que el disco esté roto. Puede haber un problema con el sistema de archivos, una conexión USB defectuosa, un cable en mal estado o, efectivamente, un problema físico en la unidad.
En este artículo vamos a revisar el problema paso a paso para intentar encontrar la causa antes de tomar medidas más agresivas.
¿Qué significa «Input/output error»?
En Linux, una operación de entrada/salida (I/O) es cualquier operación mediante la cual el sistema intenta leer o escribir información en un dispositivo.
Por ejemplo, cuando copiás un archivo desde un disco externo, Linux necesita leer los datos del dispositivo y escribirlos en el destino.
Si el kernel no puede completar correctamente esa operación, puede aparecer un Input/output error.
El mensaje, por sí solo, no identifica la causa exacta. Por eso el primer objetivo no debería ser reparar el disco inmediatamente, sino averiguar qué está fallando.
¿Cuáles son las causas más habituales?
- Problemas con el cable USB.
- Una conexión USB defectuosa o inestable.
- El dispositivo recibió una desconexión inesperada.
- Errores en el sistema de archivos.
- Problemas de alimentación en un disco externo.
- Errores de lectura o escritura del dispositivo.
- Un disco HDD, SSD o pendrive que está comenzando a fallar.
Paso 1: identificar el dispositivo
Antes de ejecutar cualquier herramienta de reparación, identificá exactamente qué dispositivo está presentando el problema.
Ejecutá:
lsblk -fEste comando muestra los discos, las particiones, el sistema de archivos y los puntos de montaje.
Podés encontrar una salida similar a:
NAME FSTYPE FSVER LABEL SIZE MOUNTPOINTS
sda 465.8G
├─sda1 ext4 100G /
└─sda2 ext4 365G /home
sdb 931.5G
└─sdb1 ntfs Datos 931.5G /media/mauro/DatosPrestá mucha atención a la identificación del dispositivo. No confundas el disco completo, como /dev/sdb, con una partición, como /dev/sdb1.
Paso 2: revisar los mensajes del kernel
Cuando aparece un error de entrada/salida, los mensajes del kernel pueden aportar información mucho más precisa.
Después de reproducir el problema, ejecutá:
sudo dmesg -T | tail -50También podés consultar el registro del kernel de la sesión actual con:
sudo journalctl -k -b | tail -50Buscá mensajes relacionados con el dispositivo que presenta el problema.
Por ejemplo, si el problema está relacionado con /dev/sdb, pueden aparecer mensajes donde se mencione sdb, errores de lectura o escritura, o problemas de comunicación con el dispositivo.
Esta información es especialmente importante porque puede ayudarnos a distinguir entre un problema lógico y uno relacionado con el hardware.
Paso 3: si es un disco externo o un USB, revisá la conexión
Si el error aparece con un pendrive, disco USB o cualquier dispositivo externo, antes de ejecutar una reparación conviene revisar algo tan simple como la conexión.
- Probá otro puerto USB.
- Si es posible, probá otro cable.
- En discos externos que utilizan alimentación independiente, comprobá la fuente de alimentación.
- Evitá utilizar hubs USB para hacer la prueba.
- Probá el dispositivo en otro equipo si tenés esa posibilidad.
Si después de cambiar el puerto o el cable el problema desaparece, probablemente no había un problema con el sistema de archivos sino con la comunicación con el dispositivo.
Paso 4: comprobá si el sistema de archivos tiene errores
Si la unidad continúa funcionando pero presenta errores, puede existir un problema en el sistema de archivos.
Antes de utilizar herramientas de comprobación, asegurate de que la partición esté desmontada.
sudo umount /dev/sdb1Reemplazá /dev/sdb1 por la partición correcta.
Para sistemas de archivos Linux compatibles con fsck, podés realizar una comprobación con:
sudo fsck /dev/sdb1fsck es una interfaz que utiliza las herramientas específicas disponibles para cada tipo de sistema de archivos.
Es importante no ejecutar comandos de reparación a ciegas sobre una partición que esté montada o sobre un dispositivo que no hayas identificado correctamente.
Una opción gráfica: la aplicación Discos
Si utilizás Ubuntu, Linux Mint u otra distribución que incluya Discos (GNOME Disks), también podés realizar determinadas comprobaciones desde una interfaz gráfica.
- Abrí la aplicación Discos.
- Seleccioná el disco que presenta el problema.
- Seleccioná la partición correspondiente.
- Si está montada, desmontala.
- Abrí las opciones de la partición.
- Seleccioná la opción para comprobar o reparar el sistema de archivos, si está disponible.
Esta opción resulta especialmente cómoda cuando el problema está relacionado con una partición que quedó inconsistente después de una desconexión inesperada.
Paso 5: comprobar la salud del disco
Si los errores de entrada/salida vuelven a aparecer, especialmente en el mismo disco, ya conviene investigar si existe un problema físico.
Para discos compatibles con SMART podés utilizar smartctl, incluido en el paquete smartmontools.
En Debian, Ubuntu y Linux Mint podés instalarlo con:
sudo apt update
sudo apt install smartmontoolsPrimero podés pedirle a smartctl que busque los dispositivos disponibles:
sudo smartctl --scan-openDespués podés consultar la información SMART del disco correspondiente:
sudo smartctl -a /dev/sdbReemplazá /dev/sdb por el dispositivo correcto.
La herramienta puede mostrar información de salud, registros de errores y, cuando el dispositivo lo permite, resultados de pruebas internas.
¿Qué pasa si SMART muestra errores?
Si el disco comienza a mostrar errores de hardware, errores no corregibles o indica que está fallando, no conviene seguir intentando repararlo como si fuera un simple problema del sistema de archivos.
La prioridad pasa a ser recuperar los datos.
Si todavía podés acceder a la información, realizá una copia de seguridad hacia otro dispositivo antes de continuar haciendo pruebas.
La documentación de smartctl advierte que un estado de disco fallando debe tomarse como una señal para sacar los datos del dispositivo y ponerlos a salvo. :contentReference[oaicite:1]{index=1}
¿Y si el disco funciona después de repararlo?
Que una reparación haya solucionado el problema no significa necesariamente que el dispositivo esté en perfecto estado.
Si el error apareció una sola vez después de una desconexión accidental y nunca volvió a ocurrir, puede haber sido simplemente una inconsistencia del sistema de archivos.
Pero si el mensaje vuelve a aparecer, especialmente durante operaciones de lectura o escritura, conviene investigar el hardware.
Casos especiales
El error aparece al copiar archivos
Si solamente determinados archivos generan Input/output error, puede existir un problema localizado en la zona del dispositivo donde están almacenados esos datos.
En ese escenario no conviene asumir que todo se solucionará ejecutando una reparación del sistema de archivos.
El disco desaparece y vuelve a aparecer
Si el dispositivo se desconecta y vuelve a aparecer mientras lo utilizás, prestá especial atención al cable, al puerto USB, a la alimentación y a los mensajes del kernel.
Un problema de comunicación puede producir errores de entrada/salida aunque el sistema de archivos esté correctamente estructurado.
Es un pendrive
Los pendrives también pueden presentar este error. Si el problema aparece repetidamente en distintos equipos, no descartes que la memoria flash esté llegando al final de su vida útil.
Es un disco externo NTFS
Si la unidad utiliza NTFS y fue utilizada previamente desde Windows, primero hay que comprobar que Windows haya cerrado correctamente la partición. Un estado de hibernación o Inicio rápido puede impedir un acceso normal desde Linux.
Qué no deberías hacer
Cuando aparecen errores de entrada/salida, es tentador empezar a ejecutar comandos de reparación hasta que alguno funcione.
No es una buena estrategia.
- No ejecutes
fscksobre una partición montada. - No ejecutes comandos sobre
/dev/sdao/dev/sdbsin verificar primero qué dispositivo es. - No formatees la unidad para intentar «solucionar» el error si necesitás conservar los datos.
- No ignores errores de entrada/salida que aparecen repetidamente.
- No sigas escribiendo datos en un disco que muestra señales claras de fallo físico si todavía necesitás recuperar información.
Un único error después de desconectar accidentalmente un dispositivo no necesariamente significa que el disco esté muriendo.
La situación es diferente si empezás a encontrar varios de estos síntomas:
- El disco desaparece y vuelve a aparecer.
- Las operaciones de lectura son extremadamente lentas.
- Los archivos dejan de poder abrirse.
- Los errores aparecen cada vez con mayor frecuencia.
- SMART informa problemas.
- El kernel registra repetidamente errores de lectura o escritura.
En ese escenario, la prioridad debería ser salvar los datos y después diagnosticar o reemplazar el dispositivo.
Conclusión
El error «Input/output error» es un mensaje que conviene tomar en serio, pero no hay que asumir automáticamente que significa que el disco está muerto.
Primero identificá correctamente el dispositivo con lsblk -f, revisá los mensajes del kernel, comprobá cables y conexiones si se trata de una unidad externa y, si el problema continúa, revisá el sistema de archivos y la salud del dispositivo.
Si los errores vuelven a aparecer o SMART muestra señales de fallo, no pierdas tiempo intentando reparar una y otra vez la unidad: hacé primero una copia de seguridad de tus datos importantes.
En Linux, un mensaje tan sencillo como «Input/output error» puede ser la primera señal de un problema mucho más serio. Detectarlo a tiempo puede marcar la diferencia entre reparar una unidad y terminar intentando recuperar datos de un disco que ya dejó de funcionar.
