Obnovite podatke v sistemu Linux s pomočjo ddrescue

Obnovite Podatke V Sistemu Linux S Pomocjo Ddrescue



ddrescue je orodje, ki se uporablja za obnovitev podatkov iz datoteke ali blokovne naprave, kot so trdi disk, SSD, RAM diski, CD-ji, DVD-ji in pomnilniške naprave USB. Kopira podatke iz ene blokovne naprave v drugo, pri čemer pusti poškodovane podatkovne bloke in premakne samo dobre. ddrescue je zmogljivo obnovitveno orodje, ki je popolnoma avtomatizirano, ker ne zahteva nikakršnega vmešavanja med operacijo obnovitve. Poleg tega ga je mogoče kadar koli ustaviti in nadaljevati zahvaljujoč datoteka zemljevida ddrescue . Druge ključne funkcije ddrescue so navedene spodaj:
  • 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.

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 ddrescue

Za 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, FSTYPE

The -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 ] .log

Opomba: 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.log

V 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.log

The -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 / sdb

Pred 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.log

Predpostavimo /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.log

Ponovno 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 RecoveryMount

Nato namestite slikovno datoteko z:

sudo mount -O obnovitev zanke.img ~ / RecoveryMount

Zastavica -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 ~ / RecoveryMount

Napredne 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.log

The – 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.log

Poleg 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.