No momento, estou enfrentando um comportamento estranho ao usar um novo disco rígido USB externo e acredito que o comportamento esteja relacionado a um problema de montagem, um problema no sistema de arquivos ou uma falha real de hardware. Deveria ajudar a comunidade se eu mencionasse o que fiz para corrigir o problema e o que usei para montar o disco rígido USB.
Sistema de arquivo
O disco rígido USB foi formatado no Ubuntu em uma VM na minha máquina Windows. Mais tarde, foi movido para o servidor físico do Ubuntu.
Suporte USB
Instalei o USB Mount usando sudo apt-get install usbmount
o qual consegui navegar no disco rígido e gravar nele via /media/usb
.
Tudo bem até...
Cheguei a cerca de 20 GB no disco rígido, depois de ter falhas via FTP ao copiar para o dispositivo. Agora, o problema estranho é que quando uso sudo cp filename
e escrevo no dispositivo, não recebo nenhum erro. Os erros relatados via Flashfxp são disco cheio ou erro de entrada de leitura/gravação.
Usando Pmount
Remover o USBMount e usar o Pmount não resolve o problema além do que vejo, /media/usb0
em vez de apenas /usb/
remover o pmount e o usbmount. Ainda posso ver /media/usb0/
o que achei muito estranho.
Fdisk relata vários problemas
A seguir está um relatório do uso do fdisk, como você pode ver, parece que não tenho nenhum sistema de arquivos no sdb, o que é estranho, pois posso visualizá-lo. Usando fdisk /dev/sdb/ não consigo visualizar nenhuma partição nem excluí-la, mesmo ao criar uma.
simon@Pluto2:/media/usb0$ sudo fdisk -l
Disk /dev/sda: 37.0 GB, 37019566080 bytes 255 heads, 63 sectors/track, 4500 cylinders, total 72303840 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000c5772
Device Boot Start End Blocks Id System /dev/sda1 * 2048 499711 248832 83 Linux /dev/sda2 501758 72302591 35900417 5 Extended /dev/sda5 501760 72302591 35900416 8e Linux LVM Note: sector size is 4096 (not 512)
Disk /dev/sdb: 2000.4 GB, 2000398929920 bytes 255 heads, 63 sectors/track, 30400 cylinders, total 488378645 sectors Units = sectors of 1 * 4096 = 4096 bytes Sector size (logical/physical): 4096 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x0001b7d6
Device Boot Start End Blocks Id System
Disk /dev/mapper/Pluto2--vg-root: 32.6 GB, 32635879424 bytes 255 heads, 63 sectors/track, 3967 cylinders, total 63741952 sectors Units
= sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
Disk /dev/mapper/Pluto2--vg-root doesn't contain a valid partition table
Disk /dev/mapper/Pluto2--vg-swap_1: 4123 MB, 4123000832 bytes 255 heads, 63 sectors/track, 501 cylinders, total 8052736 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
Disk /dev/mapper/Pluto2--vg-swap_1 doesn't contain a valid partition table
Executando fsck
Encontrei vários guias on-line e um deles mencionou a execução do fsck... infelizmente, isso só torna o problema muito mais confuso para mim.
simon@Pluto2:/media/usb0$ sudo fsck /dev/sdb
fsck from util-linux 2.20.1
e2fsck 1.42.9 (4-Feb-2014)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdb
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
Executando e2fsck -b 8193 e -b 32768
simon@Pluto2:/media/usb0$ sudo e2fsck -b 32768 /dev/sdb
e2fsck 1.42.9 (4-Feb-2014)
e2fsck: Bad magic number in super-block while trying to open /dev/sdb
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
Executando smartctl -i
simon@Pluto2:/media/usb0$ sudo smartctl -d sat -i /dev/sdb
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.13.0-32-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Seagate Barracuda 7200.14 (AF)
Device Model: ST2000DM001-1CH164
Serial Number: XXXXXXXXXX
LU WWN Device Id: 5 000c50 06636209d
Firmware Version: CC49
User Capacity: 2,000,398,934,016 bytes [2.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 7200 rpm
Device is: In smartctl database [for details use: -P show]
ATA Version is: ACS-2, ACS-3 T13/2161-D revision 3b
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is: Tue Dec 9 21:31:44 2014 GMT
==> WARNING: A firmware update for this drive is available,
see the following Seagate web pages:
http://knowledge.seagate.com/articles/en_US/FAQ/207931en
http://knowledge.seagate.com/articles/en_US/FAQ/223651en
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
Executando smartctl -d sat -t short /dev/sdb
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 258
Marca abaixo de 20 GB
Também vale a pena mencionar que se eu excluir 5 GB de dados, posso gravar outros 5 GB no dispositivo sem problemas. execute várias ferramentas no dispositivo.
Responder1
O próprio disco rígido tem um problema em um de seus setorese o problema do disco rígido precisa ser corrigidoantesvocê tenta reutilizá-lo.
Tudo o que você fez até agora foi executar ferramentas de reparo do sistema de arquivosque todos assumem que têm um bom disco rígido para trabalhar
Se vocêrealmentesuspeitar de falha no disco rígido, (que é o que parece), você deve executarbadblocks
Nesse caso, eu não executaria em uma partição, mas em todo o disco e faria um teste destrutivo (se possível).
Antes de executar o seguinte comando, leiaman badblocks
badblocks está um nível acima da formatação de baixo nível de um disco e um nível abaixo do formato FS.
O que eu faria é movê-lo para uma máquina física (não uma VM) e: umount /dev/usb0&&badblocks /dev/usb0 -s -v -w
onde usb0
está o nome do dispositivo da unidade.
O comando acima iniciará a tecnologia SMART da sua unidade para trocar os setores defeituosos, se possível (e se o SMART não fizer nada, a saída dos badblocks poderá ser usada como uma entrada para mke2fs
)
Relendo toda a conversa novamente:
É uma unidade nova: devolva-a e troque por outra!Responder2
A unidade funciona normalmente em outros computadores ou Windows? Você consegue ler e gravar em toda a unidade?
Eu já usei "casos" de unidades USB externas, onde você conecta uma unidade de HD ou CD/DVD, o Ubuntu (Linux Mint) geralmente vê os HDs como /dev/sdc (por exemplo) como uma unidade normal. Não há necessidade de usbmount
ou pmount
, mas talvez o seu seja mais novo ou estranho de alguma forma. Existem outros com exatamente a mesma unidade que podem (ou não) usá-lo com o Linux (Ubuntu, debian, qualquer um)?
Enfim, quando ele é montado, qual é o formato do drive? Dê uma olhada com mount
&/ou lsblk
.
Qualquer MBR ou GPT? Você está executando o fsck no dispositivo "inteiro" /dev/sdb e não em uma partição como /dev/sdb1 (mas o fdisk não parece ver nenhuma partição de qualquer maneira), mas não consegue ver nenhum ext2/3/4 FS lá . O fsck ainda hesita quando usado em/dev/sdb1? E, em geral, é melhor rodar fsck
em partições não montadas.
Com um disco rígido USB, é difícil dizer se é um problema de software/driver, ou do próprio HD, ou do "case" externo, ou do cabo USB ou hub ou plugue...
Novas informações: posso ter esquecido (quase TL; DR ;-) uma informação potencialmente interessante:
O disco rígido USB foi formatado no Ubuntu em uma VM na minha máquina Windows
Não tive sorte com VMs e USB (ou qualquer acesso direto ao hardware), pois tudo passa pelo programa VM, que parece um grande suspeito do comportamento estranho...
Responder3
Como uma boa alternativa aos badblocks, você pode tentar o diskscan (do terminal:apt-get install diskscan). Mede o tempo de latência da leitura de setores e também reporta setores defeituosos. Quanto maior o tempo de latência maior a probabilidade de desenvolvimento de um erro.