dd está trabalhando com o argumento bs, mas dá erro IO sem

1

Eu tenho um HDD 4TB WD 40EFRX (vermelho) e tento verificar a saúde desse disco. Na verdade, eu apaguei todas as partições e a tabela via gparted e construí uma nova partição table + ex4. Posteriormente, quis sobrescrever todos os dados com zeros para se livrar dos dados antigos. No entanto, descobri que usando

dd if=/dev/zero of=/dev/sdb status=progress

resulta em um erro de E / S logo no começo:

sudo dd if=/dev/zero of=/dev/sdb status=progress
474558976 bytes (475 MB, 453 MiB) copied, 38.0445 s, 12.5 MB/s
dd: writing to '/dev/sdb': Input/output error
927977+0 records in
927976+0 records out
475123712 bytes (475 MB, 453 MiB) copied, 46.6914 s, 10.2 MB/s

ao adicionar a opção bs = 64MB (o cache desse HDD é de 64 MB) o comando funciona muito bem. No entanto, eu acho que com base no erro IO o HDD está de alguma forma morto ou posso fazer outras soluções alternativas também? By the way, eu tenho o disco rígido via SATA / USB conectado ao meu laptop.

    
por Tobi 30.12.2017 / 14:11

1 resposta

0

Admito que não encontrei nem ouvi falar sobre o seguinte problema, mas por outro lado, não sou especialista em falhas no disco rígido ...: -)

A quantidade pura de operações de E / S pode de alguma forma causar o problema. Entre os dois tipos de dd chamadas é o fator 128.000 no número de operações de leitura e gravação. Eu não sei se a camada de bloqueio do Linux de alguma forma reordena os acessos diretos a um dispositivo de bloco. Se isso acontecer, então esse fator seria menor.

Você pode tentar tamanhos de bloco menores. bs=512KB seria uma redução por um fator de 1024. Talvez você ache que mesmo um tamanho de bloco muito menor que o tamanho do cache faz com que o problema desapareça.

    
por 30.12.2017 / 15:42

Tags