Palauta tiedot Linuxissa ddrescuen avulla

Palauta Tiedot Linuxissa Ddrescuen Avulla



ddrescue on työkalu, jota käytetään tietojen palauttamiseen tiedostosta tai lohkolaitteesta, kuten kiintolevyltä, SSD-levyiltä, ​​RAM-levyiltä, ​​CD-levyiltä, ​​DVD-levyiltä ja USB-tallennuslaitteilta. Se kopioi tietoja lohkolaitteesta toiseen jättäen vioittuneita tietolohkoja ja siirtämällä vain hyvät. ddrescue on tehokas palautustyökalu, joka on täysin automatisoitu, koska se ei vaadi häiriöitä palautuksen aikana. Lisäksi se voidaan pysäyttää ja jatkaa milloin tahansa, kiitos ddrescue karttatiedosto . Muut ddrescuen tärkeimmät ominaisuudet on lueteltu alla:
  • Se ei korvaa palautettuja tietoja, mutta täyttää aukot iteratiivisen palautuksen tapauksessa. Se voidaan kuitenkin katkaista, jos työkalua kehotetaan tekemään se nimenomaisesti.
  • Palauta tiedot yhdeksi tiedostoksi useista tiedostoista tai lohkoista.
  • Tukee useita laiteliitäntöjä, kuten SATA-, ATA-, SCSI-, MFM-asemia, levykkeitä ja SD-kortteja.

Tässä oppaassa aion tutkia tätä uskomattoman hyödyllistä tietojen palautustyökalua. Keskustelen myös sen asennusprosessista ja siitä, kuinka sitä käytetään lohkolaitteen tai osion palauttamiseen.

Huomautus: Käytän Linux-jakelua (Ubuntu 22.04) tämän oppaan ohjeisiin. Ddrescue-apuohjelman asennusprosessi voi vaihdella, mutta ohjeet ovat samat kaikissa Linux-jakeluissa.







Asennetaan ddrescue

Erityisesti ddrescuen asentaminen Linuxiin Ubuntu ja sen maut tai Debian-pohjainen distros, käytä:



sudo apt Asentaa gddrescue

Asentaaksesi sen REHL , Fedora , ja CentOS , ota ensin käyttöön LÄMMIN (Lisäpaketit Enterprise Linuxille).



sudo nam asennus lämmin vapautus

Yllä oleva komento on vastaavan jakelun uudemmille versioille.





Suorita sitten seuraava komento asentaaksesi ddrescue:

sudo nam asennus ddrescue

Arch-pohjaisille Linux-jakeluille, kuten Arch-Linux ja Manjaro , käytä alla annettua komentoa asentaaksesi ddrescue-palautusapuohjelman.



sudo pacman -S ddrescue

Koska käytän Ubuntu 22.04:ää, käytän sen asentamiseen APT-pakettienhallintaa.

Perusasioiden ymmärtäminen

Ennen kuin käytät ddrescue-työkalua tietojen palauttamiseen, suosittelen käyttäjiä, jotka ovat uusia palautusprosessissa, ymmärtämään joitain Linuxin nimeämiskäytäntöjä.

Linux tunnistaa lohkot (laitteet) tiedostoiksi ja sijoittaa ne tiedostoihin /dev hakemistosta. Voit luetella /dev-hakemiston tiedostot käyttämällä ls /dev komento.

The Kovalevyt (tallennuslohkot) on edustettuna sd sen jälkeen aakkoset; useiden tallennuslaitteiden tapauksessa tiedostot esitetään muodossa /dev/sd a, /dev/sd b, ja niin edelleen.

Jos tallennuslaitteessa on väliseinät , niin niitä edustaa numero, jolla on vastaava asematiedoston nimi, kuten /dev/sda 1 , /dev/sda 2 , ja niin edelleen.

Listaa kaikki lohkot ja muut järjestelmään liitetyt laitteet käyttämällä luettelolohkoa lsblk komento:

lsblk

ddrescue-komento voi palauttaa koko lohkon (sisältää MBR:n ja osiot) tai myös osion. Toisaalta, jos sinun on palautettava vain tietyt tiedostot tietystä osiosta, on parempi palauttaa osio koko lohkon sijaan.

Tärkeitä huomioita

Ennen kuin käytät ddrescue-apuohjelmaa, tulee ottaa huomioon joitakin erittäin tärkeitä kohtia:

  • Älä yritä palauttaa asennettua lohkoa, lohkon ei pitäisi olla edes vain luku -tilassa.
  • Älä yritä korjata lohkoa, jossa on I/O-virheitä.
  • Järjestelmä voi muuttaa syöttö- ja tulostuslaitteiden nimet uudelleenkäynnistettäessä. Varmista ennen kopioinnin aloittamista, että laitteiden nimet ovat oikein.
  • Jos käytät erillistä lohkoa tulostuslaitteena, kaikki laitteen tiedot korvataan.

Käyttämällä ddrescuea

Kun olet asentanut ddrescue-apuohjelman ja ymmärtänyt nimeämiskäytännöt, seuraava vaihe on tunnistaa viallinen levy ja palauttaa se ddrescue-työkalulla.

Viallisen lohkon palauttaminen

Ensimmäinen esimerkki kattaa koko lohkon palautusprosessin. Listaa ensin lohkot käyttämällä lsblk komento:

lsblk -O NIMI, KOKO, FSTYPE

The -O lippua käytetään määrittämään minkä tyyppiset tiedot (kentät) komennon tulee tulostaa. Olen maininnut NIMI , KOKO , ja FSTYPE tai tiedostojärjestelmätyyppi.

Nyt voit tunnistaa kohdelohkon, osion ja sijainnin pelastetun kuvatiedoston tallentamista varten.

Toinen tärkeä huomioitava asia on, että Linuxissa lohkon nimi määritetään dynaamisesti käynnistyksen yhteydessä ja uudelleenkäynnistyksen jälkeen lohkojen nimet voivat muuttua. Ole siis varovainen, kun kirjoitat muistiin lohkojen nimet.

Käytä nyt seuraavaa syntaksia pelastaaksesi lohko kuvatiedostona, jonka juurihakemistossa on lokitiedosto.

sudo ddrescue -d -rX / kehittäjä / [ lohko ] [ polku / nimi ] .img [ lokitiedoston_nimi ] .Hirsi

Huomautus: Korvata [lohko] , [polku/nimi] kuvatiedostosta ja [lokitiedoston_nimi] sopivilla nimillä.

Tässä esimerkissä olen palauttamassa /dev/sda juurihakemistossa kuvatiedoston nimellä recovery.img . Lokitiedosto, joka tunnetaan myös nimellä karttatiedosto, on välttämätön, jos haluat jatkaa palautusta milloin tahansa.

sudo ddrescue -d -r2 / kehittäjä / sda2 recovery.img recovery.log

Yllä olevassa komennossa käytetään kahta tärkeää lippua.

d -epäsuora Käytetään käskemään työkalua käyttämään levyä suoraan ytimen välimuistia huomioimatta
rX -yritä-hyvitykset Käytetään käskemään työkalua yrittämään virheellistä sektoria uudelleen X monta kertaa

Kun suoritat yllä olevan komennon, huomaat, että tiedostoselaimessa näkyy kaksi tiedostoa nimillä recovery.img ja recovery.log .

Toipumisaika riippuu tulolohkon koosta ja vauriosta. Jos olet palauttamassa suurta lohkoa, suosittelen lokitiedostoa, koska prosessin suorittaminen voi kestää useita tunteja tai jopa päiviä.

Yllä olevan komennon tulos on annettu alla:

Lähtökuvassa ipos on syöttötiedoston syöttöpaikka, josta kopiointi aloitetaan ja haavaumat on tulosteen paikka tulostiedostossa, johon tietoja kirjoitetaan.

The kokeilematon on lohkon koko ei odota kokeilua. The pelastettu ilmaisee onnistuneesti palautetun lohkon koon. The pct pelastettu ilmaisee tietojen onnistuneen palautuksen prosentteina. Ehdot, leikkaamaton , ei romutettu , huono sektori , ja huonot alueet ovat itsestään selviä. Kuitenkin lukuvirheet termi osoittaa epäonnistuneet lukuyritykset numeroina.

The ajoaika näyttää ajan, jonka työkalu kesti prosessin suorittamiseen, kun taas jäljellä oleva aika on palautusprosessin suorittamiseen jäljellä oleva aika. Yllä oleva tulos näyttää jäljellä olevan ajan 0, koska prosessi on päättynyt, lue tulos seuraavasta keskeneräisen prosessin kuvasta.

Katsotaanpa, mitä saamme lokitiedostoon; Avaa luotu lokitiedosto käyttämällä vim recovery.log komento.

The nykyinen tila on +, mikä tarkoittaa, että prosessi on valmis, kun taas nykyinen_pos on sijainti lohkossa.

Luettelo nykyisistä tiloista on seuraavassa taulukossa:

? Kopioidaan
* Trimmaus
/ Romutus
Yritetään uudelleen
F Määritettyjen lohkojen täyttäminen
G Luodaan lokitiedostoa
+ Prosessi on valmis

Tämän alapuolella lokitiedostossa on tilailmaisimet aiemmin pelastetuista lohkoista alla lueteltujen merkkien muodossa:

? Lohkoa ei ole kokeiltu
* Leikkaamaton epäonnistunut lohko
/ Romuamaton lohko epäonnistui
Huono sektori epäonnistui lohko
+ Valmis lohko

Kuvatiedoston palauttaminen uuteen lohkoon

Kun olet suorittanut palautusprosessin ja sinulla on kuvatiedosto. Voit nyt haluta sen siirtävän uuteen asemaan vioittuneelta asemalta. Jos haluat siirtää kuvatiedoston uuteen lohkoon, yhdistä ensin kyseinen lohko järjestelmään ja tunnista sitten lohkon nimi käyttämällä lsblk komento.

Oletetaan, että se on /dev/sdb , käytä seuraavaa komentoa kopioidaksesi kuva uuteen lohkoon.

sudo ddrescue -f recovery.img / kehittäjä / sdb logfile.log

The -f lippua käytetään uuden lohkon päällekirjoittamiseen, jos dataa on. Muista, että lokitiedoston nimen on oltava erilainen, jotta se pysyy erillään aiemmin tallennetusta lokitiedostosta.

Yllä oleva toimenpide voidaan tehdä myös käyttämällä dd , toinen tehokas komento, jota käytetään tiedostojen kopioimiseen.

sudo dd jos =recovery.img / = / kehittäjä / sdb

Ennen kuin teet palautuksen, muista, että uuden lohkon on oltava tarpeeksi suuri säilyttääkseen koko palautetun lohkon. Jos palautuslohko on esimerkiksi 5 Gt, uuden lohkon tulee olla suurempi kuin 5 Gt.

Jos palautettu kuvatiedosto tuottaa paljon virheitä, ne voidaan korjata käyttämällä fsck komento jossain määrin Linuxissa. Kun käytät Windowsia, voit käyttää CHKDSK tai SFC käskee tehdä tämän. Palautuminen riippuu kuitenkin vioittun tiedoston luomien virheiden määrästä.

Nyt palautusprosessi ja kunnostus on tehty. Toinen tärkeä huomioitava asia on, että voit palauttaa vioittun lohkon suoraan toiseen lohkoon sen sijaan, että luot kuvatiedoston ja kopioit sen uuteen lohkoon. No, seuraavassa osiossa käsittelen tätä prosessia yksityiskohtaisesti.

Palautetaan lohko toiseen lohkoon

Jos haluat palauttaa lohkon suoraan uuteen lohkoon, yhdistä lohko ensin järjestelmään ja käytä uudelleen lsblk komento tunnistaa lohkon nimi. Väärät lohkonimet voivat sotkea koko prosessin ja saatat menettää tietoja.

Kun olet tunnistanut lähdelohkon ja kohdelohkon, käytä seuraavaa komentoa lohkon palauttamiseksi:

sudo ddrescue -d -f -r2 / kehittäjä / [ lähde ] / kehittäjä / [ määränpäähän ] backup.log

Oletetaan /dev/sdb on kohdelohko, joten kopioidaksesi /dev/sda hakemisto uuteen lohkokäyttöön:

sudo ddrescue -d -f -r2 / kehittäjä / sda / kehittäjä / sdb backup.log

Katso jälleen aiemmissa osissa mainitut kriittiset näkökohdat ennen tämän prosessin yrittämistä.

Tiettyjen tietojen palauttaminen palautetuista kuvatiedostoista

Monissa tapauksissa tietojen palauttamisen tarkoituksena on löytää tietyt tiedostot vioittuneista asemista. Jotta voit käyttää tiettyä tiedostoa, sinun on liitettävä kuvatiedosto. Linuxissa palautettua kuvatiedostoa voi tutkia käyttämällä kiinnitys komento.

Ennen kuin liität kuvatiedoston, tee kansio tai hakemisto, johon haluat purkaa kuvatiedoston sisällön.

mkdir RecoveryMount

Asenna seuraavaksi kuvatiedosto käyttämällä:

sudo kiinnitys -O silmukan palautus.img ~ / RecoveryMount

Lippu -o ilmaisee valinnat, kun taas silmukkaoptiota käytetään kuvatiedoston käsittelemiseen lohkolaitteena.

Sinulla on nyt pääsy kuvatiedoston sisältöön, kuten seuraavassa kuvakaappauksessa näkyy.

Lohkon irrottamiseksi käytä umount komento.

sudo umount ~ / RecoveryMount

Lisäominaisuudet

Aloita palautus tietystä kohdasta käyttämällä -i lippu tai -tulo-asento . Sen pitäisi olla tavuissa, oletuksena se on 0 tavua. Tämä on tärkeää, jos haluat jatkaa kopioimista tietystä kohdasta. Jos esimerkiksi haluat aloittaa kopioinnin 10 Gt:n pisteestä, käytä seuraavaa komentoa.

sudo ddrescue -i10GiB / kehittäjä / sda imagefile.img logfile.log

Voit määrittää syöttölaitteen enimmäiskoon -s lippua käytetään. The -s tarkoittaa kokoa ja sitä voidaan käyttää myös -koko tavuissa. Jos työkalu ei tunnista syöttötiedoston kokoa, määritä se tällä vaihtoehdolla.

sudo ddrescue -s10GiB / kehittäjä / sda imagefile.img logfile.log

The -kysyä -vaihtoehto voi olla varsin kätevä, koska se pyytää vahvistamaan tulo- ja lähtölohkot ennen kopioinnin aloittamista. Kuten aiemmin mainittiin, järjestelmä antaa lohkoille dynaamisesti nimet, ja ne muuttuvat uudelleenkäynnistettäessä. Joten siinä tapauksessa tämä vaihtoehto voi olla hyödyllinen.

sudo ddrescue --kysyä / kehittäjä / sda imagefile.img logfile.log

Lisäksi alla mainitaan luettelo joistakin muista vaihtoehdoista:

-R -käänteinen Kopiointisuunnan vaihtaminen
-q -melko Estääksesi kaikki ulostuloviestit
-sisään -sanallinen Tarkemmin sanottuna kaikki lähtöviestit
-s – jakaa etukäteen Tallennustilan ennakkovaraaminen tulostiedostolle
-P -tietojen esikatselu Viimeisimmän luetun datan näyttörivit oletuksena on 3 riviä

Miten ddrescue toimii

ddrescue käyttää tehokasta palautusalgoritmia, joka on jaettu neljään vaiheeseen:

1. Kopiointi

2. Trimmaus

3. Kaapiminen

4. Yritetään uudelleen

Ddrescue-algoritmin suoritus näkyy seuraavassa kuvassa.

Johtopäätös

The ddrescue on tehokas palautustyökalu, jota käytetään tietojen palauttamiseen vioittuneelta tai viallisesta asemasta toiseen asemaan kopioimalla tiedot. Se voidaan asentaa vaivattomasti mihin tahansa Linux-jakeluun oletuspaketinhallinnan avulla. Huomioi tässä oppaassa mainittu tärkeä seikka ennen tämän työkalun käyttöä. Tietojen kopiointiprosessi on yksinkertainen, irrota asema ja käytä ddrescue-komentoa lähdeaseman ja kohdeaseman nimen kanssa. Älä unohda käyttää lokitiedostoa, sillä palautusprosessin jatkamisesta tulee varsin hyödyllistä.