Problemas ao restaurar setores danificados no disco rígido

1

Eu tenho alguns problemas com meu laptop, devido à falta de eletricidade durante uma atualização crítica.

Desde então, eu tenho sido capaz de reiniciar com pouco ou nenhum outro problema, mas recentemente, possivelmente devido a outra grande atualização ou algo piorando com o disco rígido (sem pistas, realmente ...), minha máquina não foi inicializada por hdd sozinho (bem, eu não tentei usar o Windows, na verdade, mas não com o Ubuntu, que é basicamente o único sistema operacional que eu uso nele), então eu tive que usar um pendrive USB do Ubuntu para fazê-lo funcionar.

Eu tenho seguido muitos tutoriais on-line sobre como lidar com ele e finalmente instalei smartmontools com pouco benefício, já que usei smartctl para encontrar setores realocados, já que alguns recursos online não deram nenhum resultado.

Eu tive muito mais sorte seguindo outro tutorial e usando sudo badblocks -sv -b 512 /dev/sdb : depois de uma longa varredura, eu saí:

618997769one, 1:58:10 elapsed. (1/0/0 errors)
618997770one, 1:58:13 elapsed. (2/0/0 errors)
618997771one, 1:58:16 elapsed. (3/0/0 errors)
618997772one, 1:58:20 elapsed. (4/0/0 errors)
618997773one, 1:58:23 elapsed. (5/0/0 errors)
618997774one, 1:58:26 elapsed. (6/0/0 errors)
618997775one, 1:58:30 elapsed. (7/0/0 errors)
618997776one, 1:58:33 elapsed. (8/0/0 errors)
618997777one, 1:58:36 elapsed. (9/0/0 errors)
618997778one, 1:58:39 elapsed. (10/0/0 errors)
618997779one, 1:58:42 elapsed. (11/0/0 errors)
618997780one, 1:58:45 elapsed. (12/0/0 errors)
618997781one, 1:58:49 elapsed. (13/0/0 errors)
618997782one, 1:58:52 elapsed. (14/0/0 errors)
618997783one, 1:58:56 elapsed. (15/0/0 errors)
618997784one, 1:58:59 elapsed. (16/0/0 errors)
618997785one, 1:59:02 elapsed. (17/0/0 errors)
618997786one, 1:59:05 elapsed. (18/0/0 errors)
618997787one, 1:59:08 elapsed. (19/0/0 errors)
618997788one, 1:59:12 elapsed. (20/0/0 errors)
618997789one, 1:59:15 elapsed. (21/0/0 errors)
618997790one, 1:59:18 elapsed. (22/0/0 errors)
618997791one, 1:59:21 elapsed. (23/0/0 errors)
618997792one, 1:59:25 elapsed. (24/0/0 errors)
618997793one, 1:59:28 elapsed. (25/0/0 errors)
618997794one, 1:59:31 elapsed. (26/0/0 errors)
618997795one, 1:59:35 elapsed. (27/0/0 errors)
618997796one, 1:59:38 elapsed. (28/0/0 errors)
618997797one, 1:59:41 elapsed. (29/0/0 errors)
618997798one, 1:59:44 elapsed. (30/0/0 errors)
618997799one, 1:59:47 elapsed. (31/0/0 errors)
618997800one, 1:59:50 elapsed. (32/0/0 errors)
618997801one, 1:59:53 elapsed. (33/0/0 errors)
618997802one, 1:59:57 elapsed. (34/0/0 errors)
618997803one, 2:00:00 elapsed. (35/0/0 errors)
618997804one, 2:00:03 elapsed. (36/0/0 errors)
618997805one, 2:00:07 elapsed. (37/0/0 errors)
618997806one, 2:00:10 elapsed. (38/0/0 errors)
618997807one, 2:00:13 elapsed. (39/0/0 errors)
618997808one, 2:00:16 elapsed. (40/0/0 errors)
618997809one, 2:00:19 elapsed. (41/0/0 errors)
618997810one, 2:00:23 elapsed. (42/0/0 errors)
618997811one, 2:00:26 elapsed. (43/0/0 errors)
618997812one, 2:00:29 elapsed. (44/0/0 errors)
618997813one, 2:00:32 elapsed. (45/0/0 errors)
618997814one, 2:00:35 elapsed. (46/0/0 errors)
618997815one, 2:00:38 elapsed. (47/0/0 errors)
618997816one, 2:00:41 elapsed. (48/0/0 errors)
618997817one, 2:00:45 elapsed. (49/0/0 errors)
618997818one, 2:00:48 elapsed. (50/0/0 errors)
618997819one, 2:00:51 elapsed. (51/0/0 errors)
618997820one, 2:00:55 elapsed. (52/0/0 errors)
618997821one, 2:00:58 elapsed. (53/0/0 errors)
618997822one, 2:01:01 elapsed. (54/0/0 errors)
618997823one, 2:01:04 elapsed. (55/0/0 errors)
618997824one, 2:01:07 elapsed. (56/0/0 errors)
618997825one, 2:01:10 elapsed. (57/0/0 errors)
618997826one, 2:01:14 elapsed. (58/0/0 errors)
618997827one, 2:01:17 elapsed. (59/0/0 errors)
618997828one, 2:01:20 elapsed. (60/0/0 errors)
618997829one, 2:01:23 elapsed. (61/0/0 errors)
618997830one, 2:01:26 elapsed. (62/0/0 errors)
618997831one, 2:01:30 elapsed. (63/0/0 errors)
done                                                 
Pass completed, 64 bad blocks found. (64/0/0 errors)

Que pelo menos foi bastante informativo sobre se eu tinha algo errado e, no caso, onde estava. Ainda não há nenhuma pista sobre por que os números são seguidos por "um", então sinta-se à vontade para me contar essa parte também.

Neste ponto, tentei o que achei que mais sugeria, o que significava um ataque de correção:

sudo hdparm --write-sector --yes-i-know-what-i-am-doing 618997831 /dev/sdb

Uma pena que mesmo tentando com uma ou outra versão diferente, só me deu de volta:

write-sector: bad/missing sector value

E aqui estou meio perdido: qualquer dica, quanto mais educação / informativa melhor, seria muito apreciada.

Agradecemos antecipadamente pela sua atenção e pergunte se eu esqueci alguns detalhes importantes:)

Edit: Ah, muito obrigado @David!

Isso realmente ajudou, mas agora que sdb parece ok, recebi isso de sda , ainda usando sudo badblocks -sv -b 512 /dev/sda :

Checking blocks 0 to 625142447
Checking for bad blocks (read-only test):   0.00% done, 0:00 elapsed. (0/0/0 err545995272one, 1:26:12 elapsed. (0/0/0 errors)
545995273one, 1:26:15 elapsed. (1/0/0 errors)
545995274one, 1:26:18 elapsed. (2/0/0 errors)
545995275one, 1:26:21 elapsed. (3/0/0 errors)
545995276one, 1:26:25 elapsed. (4/0/0 errors)
545995277one, 1:26:28 elapsed. (5/0/0 errors)
545995278one, 1:26:31 elapsed. (6/0/0 errors)
545995279one, 1:26:35 elapsed. (7/0/0 errors)
545995280one, 1:26:39 elapsed. (8/0/0 errors)
545995281one, 1:26:43 elapsed. (9/0/0 errors)
545995282one, 1:26:47 elapsed. (10/0/0 errors)
545995283one, 1:26:55 elapsed. (11/0/0 errors)
545995284one, 1:27:00 elapsed. (12/0/0 errors)
545995285one, 1:27:06 elapsed. (13/0/0 errors)
545995286one, 1:27:11 elapsed. (14/0/0 errors)
545995287one, 1:27:17 elapsed. (15/0/0 errors)
545995288one, 1:27:21 elapsed. (16/0/0 errors)
545995289one, 1:27:25 elapsed. (17/0/0 errors)
545995290one, 1:27:29 elapsed. (18/0/0 errors)
545995291one, 1:27:35 elapsed. (19/0/0 errors)
545995292one, 1:27:39 elapsed. (20/0/0 errors)
545995293one, 1:27:46 elapsed. (21/0/0 errors)
545995294one, 1:27:49 elapsed. (22/0/0 errors)
545995295one, 1:27:53 elapsed. (23/0/0 errors)
545995296one, 1:27:56 elapsed. (24/0/0 errors)
545995297one, 1:27:59 elapsed. (25/0/0 errors)
545995298one, 1:28:02 elapsed. (26/0/0 errors)
545995299one, 1:28:06 elapsed. (27/0/0 errors)
545995300one, 1:28:09 elapsed. (28/0/0 errors)
545995301one, 1:28:12 elapsed. (29/0/0 errors)
545995302one, 1:28:16 elapsed. (30/0/0 errors)
545995303one, 1:28:19 elapsed. (31/0/0 errors)
545995304one, 1:28:22 elapsed. (32/0/0 errors)
545995305one, 1:28:28 elapsed. (33/0/0 errors)
545995306one, 1:28:31 elapsed. (34/0/0 errors)
545995312one, 1:28:38 elapsed. (35/0/0 errors)
545995313one, 1:28:42 elapsed. (36/0/0 errors)
545995320one, 1:28:49 elapsed. (37/0/0 errors)
545995328one, 1:28:58 elapsed. (38/0/0 errors)
545995329one, 1:29:02 elapsed. (39/0/0 errors)
545995336one, 1:29:06 elapsed. (40/0/0 errors)
545995337one, 1:29:10 elapsed. (41/0/0 errors)
545995338one, 1:29:13 elapsed. (42/0/0 errors)
618997768one, 1:45:58 elapsed. (43/0/0 errors)
618997769one, 1:46:02 elapsed. (44/0/0 errors)
618997770one, 1:46:05 elapsed. (45/0/0 errors)
618997771one, 1:46:08 elapsed. (46/0/0 errors)
618997772one, 1:46:11 elapsed. (47/0/0 errors)
618997773one, 1:46:14 elapsed. (48/0/0 errors)
618997774one, 1:46:18 elapsed. (49/0/0 errors)
618997775one, 1:46:21 elapsed. (50/0/0 errors)
618997792one, 1:46:24 elapsed. (51/0/0 errors)
618997793one, 1:46:28 elapsed. (52/0/0 errors)
618997794one, 1:46:31 elapsed. (53/0/0 errors)
618997795one, 1:46:34 elapsed. (54/0/0 errors)
618997796one, 1:46:38 elapsed. (55/0/0 errors)
618997797one, 1:46:41 elapsed. (56/0/0 errors)
618997798one, 1:46:44 elapsed. (57/0/0 errors)
618997799one, 1:46:48 elapsed. (58/0/0 errors)
618997808one, 1:46:51 elapsed. (59/0/0 errors)
618997809one, 1:46:55 elapsed. (60/0/0 errors)
618997810one, 1:46:58 elapsed. (61/0/0 errors)
618997811one, 1:47:01 elapsed. (62/0/0 errors)
618997812one, 1:47:05 elapsed. (63/0/0 errors)
618997813one, 1:47:08 elapsed. (64/0/0 errors)
618997814one, 1:47:11 elapsed. (65/0/0 errors)
618997815one, 1:47:14 elapsed. (66/0/0 errors)
618997816one, 1:47:18 elapsed. (67/0/0 errors)
618997817one, 1:47:21 elapsed. (68/0/0 errors)
618997818one, 1:47:24 elapsed. (69/0/0 errors)
618997819one, 1:47:27 elapsed. (70/0/0 errors)
618997820one, 1:47:30 elapsed. (71/0/0 errors)
done                                                 
Pass completed, 72 bad blocks found. (72/0/0 errors)

Eu suponho que terei que usar hdparm novamente, correto? Existe alguma maneira inteligente de automatizar em vez de iniciar o comando 72 vezes? Eu poderia fazer um script Python para concatená-los com ";", mas se houver uma maneira inteligente, apenas me avise.

Obrigado pelo seu apoio até agora:)

    
por Ajna 28.03.2016 / 18:49

3 respostas

0

Seu comando hdparm está errado. Consulte o manual (realce por mim):

% bl0ck_qu0te%

O comando correto para o seu propósito parece ser

sudo hdparm --write-sector 618997831 --yes-i-know-what-i-am-doing /dev/sdb

Editar: Como você agora estendeu sua pergunta para não apenas um bloco ruim, mas todos detectaram blocos inválidos, assinalei essa questão como uma duplicata de uma que lida com o problema mais geral de fazer com que o controlador da unidade de disco re-atribua blocos danificados com blocos reserva de reserva.

    
por David Foerster 28.03.2016 / 21:12
0

Você pode usar dd para escrever todos os 72 setores de uma só vez:

sudo dd if=/dev/zero of=/dev/sda bs=512 seek=545995273 count=72

Quanto a saber se a unidade está morrendo fisicamente ou não, verifique as estatísticas do SMART, mas com tantos setores defeituosos, suspeito que seja mais do que apenas a falta de energia, que tende a corromper apenas um. Após a gravação, se as estatísticas SMART disserem que você tem vários setores realocados, eles estarão fisicamente danificados e você deverá substituir a unidade.

    
por psusi 02.04.2016 / 04:31
-2

Você pode executar sudo fsck /dev/sdb e isso deve corrigir o que você tem em setores ruins. Se você perdeu energia durante uma atualização, tente atualizá-la novamente, então execute sudo apt-get update then sudo apt-get upgrade

    
por TheStarvingGeek 28.03.2016 / 19:01