O disco rígido USB parou de funcionar no Debian sem desmontar

3

Eu vi uma pergunta semelhante aqui, mas isso não resolve o meu problema, porque é um problema diferente.

Eu tenho um disco rígido externo e funciona bem, mas depois de um tempo montado e funcionando bem, ele é desmontado e a saída relacionada do dmesg é a seguinte,

[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

e continua. Eu reinstalei o sistema há um tempo e antes disso, funcionou perfeitamente.

Meu sistema é o Debian Wheezy atualizado e o disco é um Seagate de 250 GB (não conheço o modelo). Eu devo acrescentar que eu não estava lendo ou escrevendo coisas no disco no momento da edição.

Obrigado antecipadamente!

Editar : O dispositivo é montado no início do sistema e a linha no fstab é a seguinte,

UUID=1678E1CC78E1AB27       /media/Expansion0Drive     ntfs-3g    auto,user,rw,uid=1000,umask=077  0       0

Eu li em algum lugar que alguns discos rígidos vão para o modo de suspensão depois de um tempo, quando não são usados e enquanto a porta usb está ligada, o disco rígido está dormindo. Isso poderia ser meu problema? E se sim, como posso corrigi-lo?

    
por oxio 22.08.2012 / 02:42

1 resposta

1

Meu primeiro palpite é que pode ser um problema de "sono". Acho que já vi postagens sobre não comprar unidades "verdes" para unidades NAS por causa de coisas assim. Pode haver algo sobre isso nas especificações do disco.

Para testar isso empiricamente (e para fornecer uma correção temporária), você pode escrever um pequeno script de shell para acessar periodicamente a unidade. Se isso resolver o problema, você sabe o que é isso.

Você pode ter este script executado pelo cron ou quando você faz o login (~ / .profile) se precisar que ele seja uma solução "permanente".

#!/bin/bash

MOUNT="/media/Expansion0Drive" ## 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 ele tenha um impacto ainda menor em seu sistema, você pode substituir ls por um comando touch para atualizar o registro de data e hora em um arquivo (possivelmente vazio) na unidade.

Como um aparte, você pode nomear um ponto de montagem como quiser, então por que você precisa do \ 040 "? Se eu fiz as minhas conversões corretamente, é apenas um espaço ASCII em octal. Você pode criar todos os nomes de arquivos você quer com espaços neles, mas usar sublinhados etc. pode poupar muitos problemas com scripts e programas que tendem a separar os tokens nos espaços.

    
por 27.08.2012 / 20:43