Taastage andmed Linuxis ddrescue abil

Taastage Andmed Linuxis Ddrescue Abil



Ddrescue on tööriist, mida kasutatakse andmete taastamiseks failist või plokkseadmest, nagu kõvaketas, SSD-d, RAM-kettad, CD-d, DVD-d ja USB-mäluseadmed. See kopeerib andmeid ühest plokkseadmest teise, jättes rikutud andmeplokid ja teisaldades ainult head. ddrescue on võimas taastetööriist, mis on täielikult automatiseeritud, kuna see ei vaja taastamistoimingu ajal sekkumist. Lisaks saab seda igal ajal peatada ja jätkata tänu ddrescue kaardifail . Muud ddrescue põhifunktsioonid on loetletud allpool:
  • See ei kirjuta taastatud andmeid üle, vaid täidab lüngad korduva taastamise korral. Seda saab aga kärpida, kui tööriistal on seda selgesõnaliselt juhendatud.
  • Taastage andmed mitmest failist või plokist ühte faili.
  • Toetab mitut tüüpi seadmeliideseid, nagu SATA, ATA, SCSI, MFM-draivid, disketid ja SD-kaardid.

Selles juhendis uurin seda uskumatult kasulikku andmete taastamise tööriista. Samuti käsitlen selle installiprotsessi ja selle kasutamist blokeerimisseadme või partitsiooni taastamiseks.

Märge: Selle juhendi juhiste jaoks kasutan Linuxi distributsiooni (Ubuntu 22.04). Utiliidi ddrescue installiprotsess võib erineda, kuid juhised on kõigis Linuxi distributsioonides samad.







ddrescue installimine

ddrescue installimiseks Linuxile, eriti Ubuntu ja selle maitsed või Debianil põhinev distros, kasuta:



sudo asjakohane installida gddrescue

Selle installimiseks REHL , Fedora ja CentOS , lubage esmalt SOE (Lisapaketid Enterprise Linuxile).



sudo yum install soe vabastamine

Ülaltoodud käsk on vastava distributsiooni uuemate versioonide jaoks.





Seejärel käivitage ddrescue installimiseks järgmine käsk:

sudo yum install ddrescue

Arch-põhiste Linuxi distributsioonide jaoks, näiteks Arch-Linux ja Manjaro , kasutage ddrescue taastamise utiliidi installimiseks allpool antud käsku.



sudo pacman -S ddrescue

Kuna ma kasutan Ubuntu 22.04, kasutan selle installimiseks APT paketihaldurit.

Põhitõdede mõistmine

Enne ddrescue tööriista kasutamist andmete taastamiseks soovitan kasutajatel, kes pole taastamisprotsessis uued, mõista mõningaid Linuxi nimetamise tavasid.

Linux tuvastab plokid (seadmed) failidena ja paigutab need faili /dev kataloog. Failide loetlemiseks kataloogis /dev kasutage nuppu ls /dev käsk.

The kõvakettad (salvestusplokid) on tähistatud tähisega sd millele järgneb tähestik; mitme salvestusseadme puhul esitatakse failid kujul /dev/sd a, /dev/sd b, ja nii edasi.

Kui salvestusseadmel on vaheseinad , siis tähistatakse neid numbriga koos vastava draivi failinimega, näiteks /dev/sda 1 , /dev/sda 2 , ja nii edasi.

Kõigi plokkide ja muude süsteemiga ühendatud seadmete loetlemiseks kasutage loendiplokki lsblk käsk:

lsblk

Käsk ddrescue võib taastada kogu ploki (mis sisaldab MBR-i ja partitsioone) või ka partitsiooni. Teisest küljest, kui teil on vaja konkreetsest partitsioonist taastada ainult teatud failid, on parem taastada partitsioon, mitte kogu plokk.

Olulised kaalutlused

Enne utiliidi ddrescue kasutamist tuleks kaaluda mõnda väga olulist punkti:

  • Ärge proovige monteeritud plokki taastada, plokk ei tohiks olla isegi kirjutuskaitstud režiimis.
  • Ärge proovige parandada I/O vigadega plokki.
  • Süsteem saab taaskäivitamisel sisend- ja väljundseadmete nimesid muuta. Enne kopeerimisprotsessi alustamist veenduge, et seadmete nimed on õiged.
  • Kui kasutate väljundseadmena eraldi plokki, siis kõik seadme andmed kirjutatakse üle.

ddrescue kasutamine

Pärast utiliidi ddrescue installimist ja nimetamisreeglite mõistmist tuleb järgmiseks sammuks tuvastada vigane ketas ja taastada see tööriista ddrescue abil.

Rikutud ploki taastamine

Esimene näide hõlmab kogu ploki taastamise protsessi. Esiteks loetlege plokid, kasutades lsblk käsk:

lsblk -O NIMI, SUURUS, FSTYPE

The -O lippu kasutatakse selleks, et määrata, millist tüüpi teavet (väljasid) käsk peab väljastama. Olen maininud NIMI , SUURUS ja FSTYPE või failisüsteemi tüüp.

Nüüd saate salvestatud pildifaili salvestamiseks tuvastada sihtploki, partitsiooni ja asukoha.

Veel üks oluline asi, mida tuleb tähele panna, on see, et Linuxis määratakse ploki nimi alglaadimisel dünaamiliselt ja pärast taaskäivitamist võivad plokkide nimed muutuda. Seega olge plokkide nimede ülesmärkimisel ettevaatlik.

Nüüd kasutage järgmist süntaksit, et päästa plokk pildifailina, mille juurkataloogis on logifail.

sudo ddrescue -d -rX / dev / [ blokk ] [ tee / nimi ] .img [ logifaili_nimi ] .log

Märge: Asenda [plokk] , [tee/nimi] pildifailist ja [logifaili_nimi] vastavalt eelistatud nimedega.

Selles näites taastan /dev/sda juurkataloogis pildifaili nimega taastumine.img . Logifail, mida tuntakse ka kaardifailina, on oluline, kui soovite taastamist igal ajal jätkata.

sudo ddrescue -d -r2 / dev / sda2 recovery.img recovery.log

Ülaltoodud käsus kasutatakse kahte olulist lippu.

d -kaudne Kasutatakse selleks, et käskida tööriistal otse kettale juurde pääseda, ignoreerides tuuma vahemälu
rX -retry-pass Kasutatakse selleks, et käskida tööriistal vigase sektoriga X mitu korda uuesti proovida

Ülaltoodud käsu täitmisel märkate failibrauseris kahte faili koos nimedega taastumine.img ja recovery.log .

Taastumisaeg sõltub sisendploki suurusest ja kahjustusest. Kui taastate suurt plokki, soovitan teil kasutada logifaili, kuna protsessi lõpuleviimiseks võib kuluda mitu tundi või isegi päevi.

Ülaltoodud käsu väljund on toodud allpool:

Väljundpildil ipos on sisendfaili sisestuskoht, kust kopeerimist alustatakse ja haavandid on väljundi asukoht väljundfailis, kuhu andmeid kirjutatakse.

The proovimata on ploki suurus ei oota proovimist. The päästetud näitab edukalt taastatud ploki suurust. The pct päästetud näitab andmete edukat taastamist protsentides. Tingimused, kärbimata , lammutamata , halb sektor ja halvad alad on iseenesestmõistetavad. Siiski, lugemisvigu termin tähistab nurjunud lugemiskatseid numbritega.

The jooksuaeg näitab aega, mis tööriistal kulus protsessi lõpuleviimiseks, samal ajal kui järelejäänud aeg on taastamisprotsessi lõpuleviimiseks jäänud aeg. Ülaltoodud väljund näitab järelejäänud aega 0, kuna protsess on lõppenud, loe väljundit järgmisel lõpetamata protsessi pildil.

Vaatame, mida me logifailis saame; loodud logifaili avamiseks kasutage vim recovery.log käsk.

The praegune seis on +, mis tähendab, et protsess on lõppenud, samal ajal kui praegune_pos on positsioon plokil.

Praeguste olekute loend on toodud järgmises tabelis:

? Kopeerimine
* Kärpimine
/ Vanametalliks lammutamine
Uuesti proovimine
F Määratud plokkide täitmine
G Logifaili genereerimine
+ Protsess on lõppenud

Selle all on logifailis varem päästetud plokkide olekunäidised allpool loetletud märkide kujul:

? Plokk on proovimata
* Kärbimata plokk ebaõnnestus
/ Väljakandmata plokk ebaõnnestus
Halva sektori blokk ebaõnnestus
+ Valmis plokk

Pildifaili taastamine uude plokki

Kui olete taastamisprotsessiga lõpetanud ja pildifaili saanud. Võib-olla soovite nüüd selle rikutud draivilt uuele draivile teisaldada. Pildifaili uude plokki teisaldamiseks ühendage esmalt see plokk süsteemiga ja seejärel tuvastage ploki nimi kasutades lsblk käsk.

Oletame, et on /dev/sdb , kasutage pildi uude plokki kopeerimiseks järgmist käsku.

sudo ddrescue -f taastumine.img / dev / sdb logfile.log

The -f lippu kasutatakse uue ploki ülekirjutamiseks, kui andmeid on. Pidage meeles, et logifaili nimi peab olema erinev, et hoida seda eraldi varem salvestatud logifailist.

Ülaltoodud toimingut saab teha ka kasutades dd , teine ​​võimas käsk, mida kasutatakse failide kopeerimiseks.

sudo dd kui =recovery.img kohta = / dev / sdb

Enne taastamise tegemist pidage meeles, et uus plokk peab olema piisavalt suur, et kogu taastatud plokk alles jääks; Näiteks kui taasteplokk on 5 GB, peaks uus plokk olema suurem kui 5 GB.

Kui taastatud pildifail renderdab palju vigu, saab neid parandada kasutades fsck teatud määral käsk Linuxis. Windowsis olles saate kasutada CHKDSK või SFC käske seda teha. Taastamine sõltub aga rikutud faili tekitatud vigade arvust.

Nüüd on taastamisprotsess ja taastamine tehtud. Veel üks oluline asi, mida tuleb tähele panna, on see, et saate rikutud ploki taastada otse teisest plokist, selle asemel et luua pildifail ja kopeerida see uude plokki. Noh, järgmises osas käsitlen seda protsessi üksikasjalikult.

Plokist teise plokki taastamine

Ploki taastamiseks otse uude plokki ühendage esmalt plokk süsteemiga ja kasutage uuesti lsblk käsk ploki nime tuvastamiseks. Valed plokkide nimed võivad kogu protsessi segi ajada ja võite andmeid kaotada.

Pärast lähteploki ja sihtploki tuvastamist kasutage ploki taastamiseks järgmist käsku:

sudo ddrescue -d -f -r2 / dev / [ allikas ] / dev / [ sihtkoht ] backup.log

Oletame /dev/sdb on sihtkoha plokk, nii et kopeerida /dev/sda kataloogi uue ploki kasutamiseks:

sudo ddrescue -d -f -r2 / dev / sda / dev / sdb backup.log

Enne selle protsessi proovimist vaadake uuesti eelmistes jaotistes mainitud kriitilisi kaalutlusi.

Teatud andmete taastamine taastatud pildifailidest

Paljudel juhtudel on andmete taastamise eesmärk rikutud draividest konkreetsete failide leidmine. Konkreetsele failile juurdepääsuks peate pildifaili ühendama. Linuxis saab taastatud pildifaili uurida, kasutades mount käsk.

Enne pildifaili ühendamist looge kaust või kataloog, kuhu soovite pildifaili sisu ekstraktida.

mkdir RecoveryMount

Järgmisena ühendage pildifail, kasutades:

sudo mount -O silmuse taastamine.img ~ / RecoveryMount

Lipp -o tähistab valikuid, silmusvalikut kasutatakse pildifaili käsitlemiseks plokkseadmena.

Nüüd on teil juurdepääs pildifaili sisule, nagu on näidatud järgmisel ekraanipildil.

Ploki lahtiühendamiseks kasutage nuppu umount käsk.

sudo umount ~ / RecoveryMount

Täiustatud funktsioonid

Konkreetsest punktist taastamise alustamiseks kasutage nuppu -i lipp või -sisend-positsioon . See peaks olema baitides, vaikimisi on 0 baiti. See on oluline kopeerimise jätkamiseks konkreetsest punktist. Näiteks kui soovite kopeerimisprotsessi alustada 10 GB-st, kasutage järgmist käsku.

sudo ddrescue -i10 GiB / dev / sda imagefile.img logfile.log

Sisendseadme maksimaalse suuruse määramiseks -s kasutatakse lippu. The -s tähistab suurust ja seda saab kasutada ka kui – suurus baitides. Kui tööriist ei tuvasta sisendfaili suurust, kasutage selle määramiseks seda suvandit.

sudo ddrescue -s10GiB / dev / sda imagefile.img logfile.log

The – küsi valik võib olla üsna mugav, kuna see küsib enne kopeerimisprotsessi alustamist sisend- ja väljundplokkide kinnitamist. Nagu varem mainitud, määrab süsteem plokkidele dünaamiliselt nimed ja need muutuvad taaskäivitamisel. Nii et sel juhul võib see valik olla kasulik.

sudo ddrescue -- küsi / dev / sda imagefile.img logfile.log

Lisaks on allpool loetletud mõned muud valikud:

-R -tagurpidi Kopeerimise suuna muutmiseks
-q – päris Kõigi väljundsõnumite sulgemiseks
-sisse -sõnaline Täpsemalt kõik väljundsõnumid
-lk – eeleraldamine Väljundfaili jaoks salvestusruumi eeleraldamiseks
-P -andmete eelvaade Viimaste andmete kuvamise read on vaikimisi 3 rida

Kuidas ddrescue töötab

ddrescue kasutab võimsat taastealgoritmi, mis on jagatud nelja faasi:

1. Kopeerimine

2. Kärpimine

3. Kraapimine

4. Uuesti proovimine

Ddrescue algoritmi täitmine on näidatud järgmisel pildil.

Järeldus

The ddrescue on võimas taastetööriist, mida kasutatakse andmete taastamiseks rikutud või rikkis draivilt teisele draivile andmete kopeerimise teel. Selle saab vaikepaketihalduri abil hõlpsasti installida mis tahes Linuxi distributsioonile. Enne selle tööriista kasutamist pidage meeles selles juhendis mainitud olulist tähelepanu. Andmete kopeerimise protsess on lihtne, ühendage draiv lahti ja kasutage käsku ddrescue koos lähteketta nime ja sihtketta nimega. Ärge unustage kasutada logifaili, kuna taasteprotsessi jätkamine on üsna kasulik.