El disco duro USB dejó de funcionar en Debian sin desmontarlo

El disco duro USB dejó de funcionar en Debian sin desmontarlo

He visto una pregunta similar por aquí, pero no resuelve mi problema porque es un problema diferente.

Tengo un disco duro externo y funciona bien, pero después de un tiempo de montarlo y funcionar bien, se desmonta y el resultado relacionado de dmesg es el siguiente:

[22653.465263] usb 1-6: USB disconnect, device number 3
[22654.341275] Buffer I/O error on device sdb1, logical block 5851506
[22654.341285] Buffer I/O error on device sdb1, logical block 5851507
[22654.341290] Buffer I/O error on device sdb1, logical block 5851508
[22654.341295] Buffer I/O error on device sdb1, logical block 5851509
[22654.341300] Buffer I/O error on device sdb1, logical block 5851506
[22654.472971] Buffer I/O error on device sdb1, logical block 5851506
[22654.474689] Buffer I/O error on device sdb1, logical block 55417728
[22654.474698] Buffer I/O error on device sdb1, logical block 55417728
[22654.488099] Buffer I/O error on device sdb1, logical block 55417728
[22654.625318] Buffer I/O error on device sdb1, logical block 15213709
[22655.852960] usb 1-6: new high-speed USB device number 4 using ehci_hcd
[22655.986631] usb 1-6: New USB device found, idVendor=0bc2, idProduct=2300
[22655.986636] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[22655.986639] usb 1-6: Product: Portable        
[22655.986641] usb 1-6: Manufacturer: Seagate 
[22655.986644] usb 1-6: SerialNumber: 2GH1D7N9    
[22655.995937] scsi7 : usb-storage 1-6:1.0
[22656.997526] scsi 7:0:0:0: Direct-Access     Seagate  Portable         0130 PQ: 0 ANSI: 4
[22656.999376] sd 7:0:0:0: [sdc] 488397168 512-byte logical blocks: (250 GB/232 GiB)
[22657.001473] sd 7:0:0:0: [sdc] Write Protect is off
[22657.001478] sd 7:0:0:0: [sdc] Mode Sense: 2f 08 00 00
[22657.002044] sd 7:0:0:0: [sdc] No Caching mode page present
[22657.002049] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[22657.006538] sd 7:0:0:0: [sdc] No Caching mode page present
[22657.006545] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[22657.064746]  sdc: sdc1
[22657.068549] sd 7:0:0:0: [sdc] No Caching mode page present
[22657.068555] sd 7:0:0:0: [sdc] Assuming drive cache: write through
[22657.068560] sd 7:0:0:0: [sdc] Attached SCSI disk
[22661.658006] quiet_error: 23 callbacks suppressed
[22661.658012] Buffer I/O error on device sdb1, logical block 15752430
[22661.658115] Buffer I/O error on device sdb1, logical block 15752435
[22661.809572] Buffer I/O error on device sdb1, logical block 15752430

y continúa. Reinstalé el sistema hace un tiempo y antes de eso funcionaba perfectamente.

Mi sistema es Debian Wheezy actualizado, y el disco es un Seagate de 250 GB (desconozco el modelo). Debo agregar que no estaba leyendo ni escribiendo cosas en el disco en el momento del problema.

¡Gracias de antemano!

Editar: El dispositivo está montado al inicio del sistema y la línea en fstab es la siguiente,

UUID=1678E1CC78E1AB27       /media/Expansion\040Drive     ntfs-3g    auto,user,rw,uid=1000,umask=077  0       0

Leí en alguna parte que algunos discos duros entran en modo de suspensión después de un tiempo, cuando no se usan y mientras el puerto USB está encendido, el disco duro está en suspensión. ¿Podría ser este mi problema? Y si es así ¿cómo puedo corregirlo?

Respuesta1

Mi primera suposición es que podría ser un problema de "sueño". Creo que he visto publicaciones sobre no comprar unidades "verdes" para unidades NAS por cosas como esta. Puede haber algo sobre esto en las especificaciones del disco.

Para probar esto empíricamente (y proporcionar una solución temporal), puede escribir un pequeño script de shell para acceder periódicamente a la unidad. Si eso soluciona el problema, entonces sabes cuál es.

Puede ejecutar este script mediante cron o al iniciar sesión (~/.profile) si necesita que sea una solución "permanente".

#!/bin/bash

MOUNT="/media/Expansion\040Drive" ## Your mount point
SLEEP_TIME="10m"  ## How long to sleep between accesses
while true
do
  ls "${MOUNT}" > /dev/null
  sleep "${SLEEP_TIME}"
done

Para que tenga un impacto aún menor en su sistema, puede reemplazar ls con un comando táctil para actualizar la marca de tiempo en un archivo (posiblemente vacío) en la unidad.

Además, puedes nombrar un punto de montaje como quieras, entonces, ¿por qué necesitas \040"? Si hice bien mis conversiones, es solo un espacio ASCII en octal. Puedes crear todos los nombres de archivos que quieras con espacios en ellos, pero usar guiones bajos, etc. puede ahorrarle muchos problemas con scripts y programas que tienden a separar tokens en espacios.

información relacionada