Toon posts:

Hulp bij redden data uitvallende HD

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal,

Recentelijk begon mijn HDD kuren te vertonen. Hij werd erg traag, was af en toe niet zichtbaar in het OS (W7/Ubuntu) en het opstarten werd erg traag. Hij was toendertijd meestal nog wel zichtbaar in het BIOS. De SMART waarden waren toen nog prima.

De laatste paar dagen is het verergerd. De HDD verschijnt nog maar heel af en toe, en dan voor een korte tijd. Data recovery tools lijken niet te helpen, omdat deze zich vooral op bad sectors focussen. Mijn data is echter nog in goede staat, ik kan er gewoon niet bij omdat de HD lijkt uit te vallen. Na wat geklooi kwam ik erachter dat ik de HD in Ubuntu (af en toe) opnieuw kan starten, en kan proberen mijn data met dd naar een nieuwe HD te kopieren. Echter, de oude HD valt continu uit waardoor gewoon kopieren niet mogelijk is. Om dit op te lossen heb ik het volgende scriptje geschreven:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
while true; do
# Get current byte
skip=$(cat "/dev/shm/bytecount")
echo $skip
# try to dd a single byte
ddret=$(sudo dd if=/dev/sdc of=/home/it/Desktop/savedata bs=1 skip=$skip count=1 oflag=append conv=notrunc iflag=skip_bytes)
ret=$?
if [ $ret = 0 ]; then
    # Write success
    skip=$((skip + 1))
    echo $skip > /dev/shm/bytecount
    else
    # Write fail
    echo "dd failed, restarting HD"
    echo "- - -" > /sys/class/scsi_host/host1/scan
fi
done


Dit kopieert mijn data byte voor byte naar een andere schijf. Als de oude schijf uitvalt faalt dd en wordt automatisch geprobeert om de HD opnieuw te starten. In principe werkt dit, echter, het byte voor byte kopieren is erg langzaam en gezien de HD het het grootste gedeelte van de tijd niet doet kan het weken duren voordat ik klaar ben met het overzetten.

Ik heb geprobeerd dit te versnellen met dd bs=1000, en 1000 bytes te skippen in plaats van 1. Helaas werkt niet dit zoals gehoopt: Als dd faalt halverwege het lezen van de 1000 bytes zal het het aantal succesvol gelezen bytes (<1000) appenden op de nieuwe HD. Op dat moment weet ik niet meer hoeveel bytes ik al geschreven heb, en hoeveel bytes ik dus moet skippen bij het inlezen van mijn data. Het inlezen gebeurt immers met een offset ((aantal bytes) * (aantal x gelezen)) en bij het schrijven append dd gewoon alles wat het heeft kunnen lezen.

Heeft iemand een idee hoe ik het bovenstaande script aan kan passen om dit probleem te omzeilen, of zelfs een volledig ander idee om mijn data te redden?

EDIT: Overigens is dit mijn eerste bash scriptje, dus excuses voor de eventuele rommel. :+

  • prutser001
  • Registratie: Oktober 2004
  • Laatst online: 18-11-2025

prutser001

Vaak zit het tegen en soms zi

Welk merk/type/firmware schijf is het? Het lijkt op een elektronisch probleem.

Wat een oplossing kan zijn is een identieke schijf zien te vinden en de PCB overzetten, zo heb ik al heel wat data kunnen redden.

Asus Z390 Maximus IX Hero, Intel 9900K, RTX3080, 64GB DDR4 3000, 2TB NVME, Samsung 850Evo 1TB, 4 x 14TB Toshiba, Be Quiet SB 801, Samsung 34"


  • Nvidiot
  • Registratie: Mei 2003
  • Laatst online: 11-01 23:32

Nvidiot

notepad!

Je zou dd_rescue kunnen pakken. Die kan resume aan, dus als je die in dat scriptje stopt hoef je niet meer byte-voor-byte te lezen, alleen bij falen de disk opnieuw te starten en dan dd_rescue weer starten.

What a caterpillar calls the end, the rest of the world calls a butterfly. (Lao-Tze)


Verwijderd

Topicstarter
Bedankt voor de tips. Ik heb dd vervangen door dd_rescue, dit werkte in principe wel, maar helaas gaat het kopiëren zo traag dat ik heb besloten dit niet af te maken. Het vooruitzicht de komende paar maanden elke avond en ochtend SATA kabels om te wisselen om 's nachts wat luttele MB'tje te redden is me iets teveel gedoe. 8)7

Ik denk dat ik de PCB maar moet vervangen. Het gaat om een Seagate Barracuda ST2000DM001.
SN: W241J2VN
PN: 1CH164-302
FW: CC26
Date: 13344
Site: WU

Ik lees dingen over verschillende versies van de ST2000DM001 (2 of 3 platters), waar moet ik precies op letten bij het kopen van een nieuwe ST2000DM001? Webshops lijken productnummers enzo niet kant en klaar op de website te zetten.

  • rikadoo
  • Registratie: Oktober 2007
  • Niet online
Misschien heb je hier wat aan?

http://www.onepcbsolution...02-cc26-su-100687658.html

Staat ook bij hoe of wat.

Wat je ook nog even zou kunnen checken is of er geen pinnetjes van de sata/power connector op het bord zijn losgeschoten door een slechte soldering.

[ Voor 35% gewijzigd door rikadoo op 22-10-2014 12:58 ]

AMD Ryzen 7 5900x | Custom WC | ASUS ROG Strix X570-E Gaming | 32GB Corsair DDR4-3600MHz | Samsung 970 nvme 1TB | Samsung 860 EVO 2TB | AMD RX 6900XT 16GB | 1x Asus RoG XG27AQDMG | 1x LG UltraGear 27GL850


  • Thralas
  • Registratie: December 2002
  • Laatst online: 22:01
Ja, die site hierboven is erg handig, en noemt ook het swappen van de contents van de flashchip - ook cruciaal (met alleen pcb swappen ben je er niet).

  • MJanzn
  • Registratie: Maart 2009
  • Laatst online: 14-10-2025
Bel of mail ze even, zijn geweldige Tweakers.
( OK, gaat om 1 ervaring maar ze hebben me goed en snel geholpen. PCB opgestuurd en binnen 2 weken terug. Kosten nog geen 70,- )
Pagina: 1