- Ne prepiše obnovljenih podatkov, ampak zapolni vrzeli v primeru ponavljajoče se obnovitve. Vendar ga je mogoče skrajšati, če ima orodje to izrecno naročeno.
- Obnovite podatke v eno datoteko iz več datotek ali blokov.
- Podpira več vrst vmesnikov naprav, kot so pogoni SATA, ATA, SCSI, MFM, diskete in kartice SD.
V tem priročniku bom raziskal to neverjetno uporabno orodje za obnovitev podatkov. Razpravljal bom tudi o postopku njegove namestitve in o tem, kako ga uporabiti za obnovitev blokovne naprave ali particije.
- Namestitev ddrescue
- Razumevanje osnov
- Pomembni premisleki
- Uporaba ddrescue
- Obnovitev poškodovanega bloka
- Obnovitev slikovne datoteke v nov blok
- Obnavljanje bloka v drug blok
- Obnovitev določenih podatkov iz obnovljenih slikovnih datotek
- Napredne funkcije
- Kako deluje ddrescue
- Zaključek
Opomba: Za navodila v tem priročniku uporabljam distribucijo Linuxa (Ubuntu 22.04). Postopek namestitve pripomočka ddrescue se lahko razlikuje, vendar bodo navodila enaka v vseh distribucijah Linuxa.
Namestitev ddrescue
Še posebej za namestitev ddrescue v Linux Ubuntu in njene okuse oz Temelji na Debianu distros, uporabite:
sudo apt namestite gddrescue
Da ga namestite na REHL , Fedora , in CentOS , najprej omogočite TOPLO (Dodatni paketi za Enterprise Linux).
sudo yum namestitev toplo sproščanje
Zgornji ukaz je za novejše različice zadevne distribucije.
Nato izvedite naslednji ukaz za namestitev ddrescue:
sudo yum namestitev ddrescueZa distribucije Linuxa, ki temeljijo na Archu, kot je npr Arch-Linux in Manjaro , uporabite spodnji ukaz za namestitev pripomočka za obnovitev ddrescue.
sudo pacman -S ddrescue
Ker uporabljam Ubuntu 22.04, bom za namestitev uporabil upravitelja paketov APT.
Razumevanje osnov
Preden uporabite orodje ddrescue za obnovitev podatkov, priporočam, da uporabniki, ki so novi v postopku obnovitve, razumejo nekatere konvencije poimenovanja v Linuxu.
Linux prepozna bloke (naprave) kot datoteke in jih postavi v /dev imenik. Za seznam datotek v imeniku /dev uporabite ls /dev ukaz.
The trdi diski (skladiščni bloki) so predstavljeni z sd sledijo abecede; v primeru več naprav za shranjevanje bodo datoteke predstavljene kot /dev/sd a, /dev/sd b, in tako naprej.
Če ima naprava za shranjevanje predelne stene , potem bodo predstavljeni s številko z ustreznim imenom datoteke pogona, kot je /dev/sda 1 , /dev/sda 2 , in tako naprej.
Za seznam vseh blokov in drugih s sistemom povezanih naprav uporabite seznam blokov lsblk ukaz:
lsblk
Ukaz ddrescue lahko obnovi celoten blok (ki vsebuje MBR in particije) ali tudi particijo. Po drugi strani pa, če morate obnoviti samo določene datoteke z določene particije, potem je bolje obnoviti particijo namesto celotnega bloka.
Pomembni premisleki
Pred uporabo pripomočka ddrescue je treba upoštevati nekaj zelo ključnih točk:
- Ne poskušajte obnoviti nameščenega bloka, blok ne sme biti niti v načinu samo za branje.
- Ne poskušajte popraviti bloka z V/I napakami.
- Sistem lahko ob ponovnem zagonu spremeni imena vhodnih in izhodnih naprav. Pred začetkom postopka kopiranja se prepričajte, da so imena naprav pravilna.
- Če kot izhodno napravo uporabljate ločen blok, bodo vsi podatki v napravi prepisani.
Uporaba ddrescue
Po namestitvi pripomočka ddrescue in razumevanju dogovorov o poimenovanju je naslednji korak identifikacija okvarjenega diska in njegova obnovitev z orodjem ddrescue.
Obnovitev poškodovanega bloka
Prvi primer bo zajemal postopek obnovitve celotnega bloka. Najprej navedite bloke z uporabo lsblk ukaz:
lsblk -O IME, VELIKOST, FSTYPEThe -O zastavica se uporablja za določitev vrste informacij (polj), ki jih mora izpisati ukaz. Omenil sem IME , VELIKOST , in FSTYPE ali vrsto datotečnega sistema.
Zdaj lahko identificirate ciljni blok, particijo in lokacijo za shranjevanje rešene slikovne datoteke.
Druga pomembna stvar, ki jo je treba upoštevati, je, da je v Linuxu ime bloka dodeljeno dinamično ob zagonu in po ponovnem zagonu se lahko imena blokov spremenijo. Zato bodite previdni pri zapisovanju imen blokov.
Zdaj uporabite naslednjo sintakso, da rešite blok kot slikovno datoteko z dnevniško datoteko v korenskem imeniku.
sudo ddrescue -d -rX / dev / [ blok ] [ pot / ime ] .img [ ime_dnevniške datoteke ] .logOpomba: Zamenjati [blokiraj] , [pot/ime] slikovne datoteke in [ime_dnevniške datoteke] z ustreznimi prednostnimi imeni.
V tem primeru obnovim /dev/sda v korenskem imeniku z imenom slikovne datoteke obnovitev.img . Dnevniška datoteka, znana tudi kot datoteka zemljevida, je bistvena, če želite kadar koli nadaljevati z obnovitvijo.
sudo ddrescue -d -r2 / dev / sda2 recovery.img recovery.logV zgornjem ukazu sta uporabljeni dve pomembni zastavici.
d | – posredno | Uporablja se za sporočanje orodju, naj neposredno dostopa do diska, ne da bi upošteval predpomnilnik jedra |
rX | –ponovni poskusi | Uporablja se za ukaz orodju, naj večkrat poskusi s slabim sektorjem X |
Ko izvedete zgornji ukaz, boste v brskalniku datotek opazili dve datoteki z imeni obnovitev.img in recovery.log .
Čas okrevanja je odvisen od velikosti vhodnega bloka in poškodbe. Če obnavljate velik blok, priporočam, da imate datoteko dnevnika, ker lahko traja nekaj ur ali celo dni, da dokončate postopek.
Izhod zgornjega ukaza je podan spodaj:
Na izhodni sliki je ipos je vhodni položaj vhodne datoteke, od koder se začne kopija in razjede je izhodni položaj v izhodni datoteki, kamor se zapisujejo podatki.
The nepreizkušena velikost bloka ni na čakanju, da bi ga poskusili. The rešil označuje velikost uspešno obnovljenega bloka. The pct rešen označuje uspešno obnovitev podatkov v odstotkih. Pogoji, neobrezana , nerazrezan , slab sektor , in slaba področja so samoumevni. Vendar pa je branje napak izraz označuje neuspešne poskuse branja v številkah.
The čas delovanja prikazuje čas, ki ga je orodje potrebovalo za dokončanje postopka, medtem ko preostali čas je preostali čas za dokončanje postopka obnovitve. Zgornji izhod prikazuje preostali čas 0, ker se je proces končal, preberite izhod na naslednji sliki nedokončanega procesa.
Poglejmo, kaj dobimo v dnevniški datoteki; da odprete ustvarjeno dnevniško datoteko, uporabite vim recovery.log ukaz.
The Trenutni status je +, kar pomeni, da je postopek končan, medtem ko je trenutni_pos je položaj v bloku.
Seznam trenutnih statusov je podan v naslednji tabeli:
? | Kopiranje |
* | Obrezovanje |
/ | Razrez |
– | Ponovni poskus |
F | Polnjenje določenih blokov |
G | Ustvarjanje dnevniške datoteke |
+ | Postopek je končan |
Pod tem ima dnevniška datoteka indikacije stanja predhodno rešenih blokov v obliki spodaj navedenih znakov:
? | Blok ni preizkušen |
* | Neodrezan neuspeli blok |
/ | Nerazrezan neuspeli blok |
– | Neuspešen blok slabega sektorja |
+ | Končan blok |
Obnovitev slikovne datoteke v nov blok
Ko končate postopek obnovitve in imate slikovno datoteko. Morda boste zdaj želeli, da se premakne na nov pogon s poškodovanega pogona. Če želite premakniti slikovno datoteko v nov blok, najprej povežite ta blok s sistemom in nato določite ime bloka z uporabo lsblk ukaz.
Predpostavimo, da je /dev/sdb , uporabite naslednji ukaz za kopiranje slike v nov blok.
sudo ddrescue -f obnovitev.img / dev / sdb logfile.logThe -f zastavica se uporablja za prepisovanje novega bloka, če obstajajo kakršni koli podatki. Upoštevajte, da mora biti ime datoteke dnevnika drugačno, da ostane ločena od predhodno shranjene datoteke dnevnika.
Zgornjo operacijo lahko izvedete tudi z uporabo dd , še en močan ukaz za kopiranje datotek.
sudo dd če =okrevanje.img od = / dev / sdbPred obnovitvijo ne pozabite, da mora biti novi blok dovolj velik, da ohrani celoten obnovljeni blok; na primer, če je obnovitveni blok 5 GB, mora biti novi blok večji od 5 GB.
Če obnovljena slikovna datoteka upodobi veliko napak, jih je mogoče popraviti z uporabo fsck ukaz v Linuxu do neke mere. Ko uporabljate Windows, lahko uporabite CHKDSK oz SFC ukaze za to. Vendar pa je obnovitev odvisna od števila napak, ki jih je ustvarila poškodovana datoteka.
Zdaj sta postopek obnovitve in obnova končana. Druga pomembna stvar, ki jo morate upoštevati, je, da lahko obnovite poškodovani blok neposredno na drugem bloku, namesto da ustvarite slikovno datoteko in jo nato kopirate v nov blok. No, v naslednjem razdelku podrobno opisujem ta proces.
Obnavljanje bloka v drug blok
Če želite obnoviti blok neposredno v nov blok, najprej povežite blok s sistemom in ga znova uporabite lsblk ukaz za identifikacijo imena bloka. Napačna imena blokov lahko zmotijo celoten postopek in lahko izgubite podatke.
Ko identificirate izvorni in ciljni blok, uporabite naslednji ukaz za obnovitev bloka:
sudo ddrescue -d -f -r2 / dev / [ vir ] / dev / [ cilj ] backup.logPredpostavimo /dev/sdb je ciljni blok, tako da kopirate /dev/sda imenik za uporabo novega bloka:
sudo ddrescue -d -f -r2 / dev / sda / dev / sdb backup.logPonovno si oglejte kritične vidike, omenjene v prejšnjih razdelkih, preden poskusite s tem postopkom.
Obnovitev določenih podatkov iz obnovljenih slikovnih datotek
V mnogih primerih je namen obnovitve podatkov najti določene datoteke na poškodovanih pogonih. Za dostop do določene datoteke morate namestiti slikovno datoteko. V sistemu Linux je mogoče obnovljeno slikovno datoteko raziskati z uporabo mount ukaz.
Pred priklopom slikovne datoteke ustvarite mapo ali imenik, v katerega želite ekstrahirati vsebino slikovne datoteke.
mkdir RecoveryMountNato namestite slikovno datoteko z:
sudo mount -O obnovitev zanke.img ~ / RecoveryMountZastavica -o označuje možnosti, medtem ko se možnost zanke uporablja za obravnavanje slikovne datoteke kot blokovne naprave.
Zdaj imate dostop do vsebine slikovne datoteke, kot je prikazano na naslednjem posnetku zaslona.
Če želite odklopiti blok, uporabite umount ukaz.
sudo umount ~ / RecoveryMountNapredne funkcije
Če želite začeti obnovitev z določene točke, uporabite -jaz zastava oz –vhodni položaj . Moral bi biti v bajtih, privzeto je 0 bajtov. To je pomembno za nadaljevanje kopiranja od določene točke. Na primer, če želite začeti postopek kopiranja od točke 10 GB, uporabite naslednji ukaz.
sudo ddrescue -i10GiB / dev / sda imagefile.img logfile.logČe želite določiti največjo velikost vhodne naprave, -s zastava bo uporabljena. The -s označuje velikost in se lahko uporablja tudi kot – velikost v bajtih. Če orodje ne prepozna velikosti vhodne datoteke, jo določite s to možnostjo.
sudo ddrescue -s10GiB / dev / sda imagefile.img logfile.logThe – vprašaj možnost je lahko zelo priročna, saj pred začetkom postopka kopiranja zahteva potrditev vhodnih in izhodnih blokov. Kot smo že omenili, sistem dinamično dodeljuje imena blokom in se ob ponovnem zagonu spremenijo. Torej je v tem primeru ta možnost lahko koristna.
sudo ddrescue -- vprašaj / dev / sda imagefile.img logfile.logPoleg tega je spodaj omenjen seznam nekaterih drugih možnosti:
-R | – vzvratno | Za obratno smer kopiranja |
-q | – precej | Za zatiranje vseh izhodnih sporočil |
-in | – besedno | Natančneje, vsa izhodna sporočila |
-str | – vnaprej dodeliti | Za vnaprejšnjo dodelitev pomnilnika za izhodno datoteko |
-P | – predogled podatkov | Vrstice prikaza zadnjih prebranih podatkov so privzeto 3 vrstice |
Kako deluje ddrescue
ddrescue uporablja močan obnovitveni algoritem, ki je razdeljen na štiri faze:
1. Kopiranje
2. Obrezovanje
3. Strganje
4. Ponovni poskus
Izvajanje algoritma ddrescue je prikazano na naslednji sliki.
Zaključek
The ddrescue je zmogljivo orodje za obnovitev, ki se uporablja za obnovitev podatkov s poškodovanega ali okvarjenega pogona na drug pogon s kopiranjem podatkov. Brez težav ga je mogoče namestiti v katero koli distribucijo Linuxa s pomočjo privzetega upravitelja paketov. Pred uporabo tega orodja upoštevajte pomemben premislek, omenjen v tem priročniku. Postopek kopiranja podatkov je preprost, odklopite pogon in uporabite ukaz ddrescue z imenom izvornega pogona in imenom ciljnega pogona. Ne pozabite uporabiti datoteke dnevnika, saj postane zelo uporabna za nadaljevanje postopka obnovitve.