Atgūt datus operētājsistēmā Linux, izmantojot ddrescue

Atgut Datus Operetajsistema Linux Izmantojot Ddrescue



Ddrescue ir rīks, ko izmanto, lai atgūtu datus no faila vai blokierīces, piemēram, cietā diska, SSD, RAM diski, CD, DVD un USB atmiņas ierīces. Tas kopē datus no vienas bloka ierīces uz citu, atstājot bojātos datu blokus un pārvietojot tikai labos. The ddrescue ir spēcīgs atkopšanas rīks, kas ir pilnībā automatizēts, jo tam nav nepieciešami nekādi traucējumi atkopšanas darbības laikā. Turklāt to var apturēt un atsākt jebkurā laikā, pateicoties ddrescue kartes fails . Citas galvenās ddrescue funkcijas ir uzskaitītas zemāk:
  • Tas nepārraksta atgūtos datus, bet aizpilda nepilnības iteratīvās atkopšanas gadījumā. Tomēr to var saīsināt, ja rīkam tas ir skaidri norādīts.
  • Atgūt datus vienā failā no vairākiem failiem vai blokiem.
  • Atbalsta vairāku veidu ierīču saskarnes, piemēram, SATA, ATA, SCSI, MFM diskus, disketes un SD kartes.

Šajā rokasgrāmatā es izpētīšu šo neticami noderīgo datu atkopšanas rīku. Es arī apspriedīšu tā instalēšanas procesu un to, kā to izmantot bloka ierīces vai nodalījuma atkopšanai.

Piezīme: Šajā rokasgrāmatā sniegtajiem norādījumiem es izmantoju Linux izplatīšanu (Ubuntu 22.04). Ddrescue utilīta instalēšanas process var atšķirties, taču norādījumi būs vienādi visos Linux izplatījumos.







Notiek ddrescue instalēšana

Lai instalētu ddrescue operētājsistēmā Linux, jo īpaši Ubuntu un tā garšas vai Uz Debian bāzes distros, izmantojiet:



sudo apt uzstādīt gddrescue

Lai to instalētu REHL , Fedora , un CentOS , vispirms iespējojiet SILTS (Papildu pakotnes Enterprise Linux).



sudo yum instalēt siltā atbrīvošana

Iepriekš minētā komanda ir paredzēta attiecīgā izplatīšanas jaunākām versijām.





Pēc tam izpildiet šo komandu, lai instalētu ddrescue:

sudo yum instalēt ddrescue

Uz Arch balstītiem Linux izplatījumiem, piemēram, Arch-Linux un Manjaro , izmantojiet tālāk norādīto komandu, lai instalētu ddrescue atkopšanas utilītu.



sudo pacman -S ddrescue

Tā kā es izmantoju Ubuntu 22.04, es izmantošu APT pakotņu pārvaldnieku, lai to instalētu.

Pamatu izpratne

Pirms ddrescue rīka izmantošanas datu atkopšanai, es ieteiktu lietotājiem, kuri ir iesācēji atkopšanas procesā, izprast dažus Linux nosaukumu piešķiršanas noteikumus.

Linux atpazīst blokus (ierīces) kā failus un ievieto tos mapē /dev direktoriju. Lai uzskaitītu failus direktorijā /dev, izmantojiet ls /dev komandu.

The cietie diski (uzglabāšanas bloki) ir attēloti ar sd seko alfabēts; vairāku atmiņas ierīču gadījumā faili tiks attēloti kā /dev/sd a, /dev/sd b, un tā tālāk.

Ja atmiņas ierīcē ir starpsienas , tad tie tiks attēloti ar skaitli ar attiecīgā diska faila nosaukumu, piemēram, /dev/sda 1 , /dev/sda 2 , un tā tālāk.

Lai uzskaitītu visus blokus un citas sistēmai pievienotās ierīces, izmantojiet saraksta bloku lsblk komanda:

lsblk

Komanda ddrescue var atgūt visu bloku (kas satur MBR un nodalījumus) vai arī nodalījumu. No otras puses, ja jums ir jāatgūst tikai konkrēti faili no konkrēta nodalījuma, tad labāk ir atgūt nodalījumu, nevis visu bloku.

Svarīgi apsvērumi

Pirms utilīta ddrescue izmantošanas ir jāņem vērā daži ļoti svarīgi punkti:

  • Nemēģiniet atgūt uzstādīto bloku, blokam nevajadzētu būt pat tikai lasīšanas režīmā.
  • Nemēģiniet labot bloku ar I/O kļūdām.
  • Sistēma var mainīt ievades un izvades ierīču nosaukumus atsāknēšanas laikā. Pirms kopēšanas procesa uzsākšanas pārliecinieties, vai ierīču nosaukumi ir pareizi.
  • Ja kā izvades ierīci izmantojat atsevišķu bloku, visi ierīcē esošie dati tiks pārrakstīti.

Izmantojot ddrescue

Pēc utilīta ddrescue instalēšanas un nosaukumu piešķiršanas noteikumu izpratnes nākamais solis ir identificēt bojāto disku un atkopt to, izmantojot rīku ddrescue.

Bojātā bloka atkopšana

Pirmais piemērs ietvers visa bloka atkopšanas procesu. Vispirms uzskaitiet blokus, izmantojot lsblk komanda:

lsblk -O NOSAUKUMS, IZMĒRS, FSTYPE

The -O karodziņš tiek izmantots, lai norādītu, kāda veida informācija (lauki) komandai jāizvada. Esmu minējis VĀRDS , IZMĒRS , un FSTYPE vai failu sistēmas tips.

Tagad varat noteikt mērķa bloku, nodalījumu un atrašanās vietu, lai saglabātu izglābtā attēla failu.

Vēl viena svarīga lieta, kas jāņem vērā, ir tāda, ka operētājsistēmā Linux bloka nosaukums sāknēšanas laikā tiek piešķirts dinamiski, un pēc atsāknēšanas bloku nosaukumi var mainīties. Tāpēc esiet piesardzīgs, pierakstot bloku nosaukumus.

Tagad izmantojiet šo sintaksi, lai glābtu bloku kā attēla failu ar žurnāla failu saknes direktorijā.

sudo ddrescue -d -rX / izstrādātājs / [ bloķēt ] [ ceļš / nosaukums ] .img [ žurnālfaila_nosaukums ] .log

Piezīme: Aizvietot [bloķēt] , [ceļš/nosaukums] no attēla faila un [žurnāla faila_nosaukums] attiecīgi ar vēlamajiem nosaukumiem.

Šajā piemērā es atgūstu /dev/sda saknes direktorijā ar attēla faila nosaukumu atgūšana.img . Žurnāla fails, kas pazīstams arī kā kartes fails, ir būtisks, ja vēlaties jebkurā laikā atsākt atkopšanu.

sudo ddrescue -d -r2 / izstrādātājs / sda2 recovery.img recovery.log

Iepriekš minētajā komandā tiek izmantoti divi svarīgi karodziņi.

d – netiešs Tiek izmantots, lai norādītu rīkam tieši piekļūt diskam, ignorējot kodola kešatmiņu
rX – atkārtotas piespēles Lieto, lai norādītu rīkam X reizes, lai vēlreiz mēģinātu bojāto sektoru

Izpildot iepriekš minēto komandu, jūs pamanīsit, ka failu pārlūkprogrammā tiek parādīti divi faili ar nosaukumiem atgūšana.img un recovery.log .

Atkopšanas laiks ir atkarīgs no ievades bloka lieluma un bojājuma. Ja atkopjat lielu bloku, ieteicams izveidot žurnālfailu, jo procesa pabeigšana var ilgt vairākas stundas vai pat dienas.

Iepriekš minētās komandas izvade ir norādīta zemāk:

Izvades attēlā, ipos ir ievades faila ievades pozīcija, no kuras tiek sākta kopēšana, un čūlas ir izvades pozīcija izvades failā, kurā tiek rakstīti dati.

The nav izmēģināts ir bloka lielums vēl nav pārbaudīts. The izglāba norāda veiksmīgi atgūtā bloka lielumu. The pc izglābts norāda uz veiksmīgu datu atkopšanu procentos. Noteikumi, neapgriezts , nav nodoti metāllūžņos , sliktais sektors , un sliktas vietas ir pašsaprotami. Tomēr lasīt kļūdas termins apzīmē neveiksmīgos lasīšanas mēģinājumus skaitļos.

The darbības laiks parāda laiku, kāds rīkam bija nepieciešams procesa pabeigšanai, kamēr atlikušais laiks ir atkopšanas procesa pabeigšanai atlikušais laiks. Iepriekš redzamā izvade parāda atlikušo laiku 0, jo process ir beidzies, izlasiet izvadi nākamajā nepabeigtā procesa attēlā.

Apskatīsim, ko mēs iegūstam žurnālfailā; lai atvērtu ģenerēto žurnālfailu, izmantojiet vim recovery.log komandu.

The pašreizējais statuss ir +, kas nozīmē, ka process ir pabeigts, kamēr pašreizējā_poz ir pozīcija uz bloka.

Pašreizējo statusu saraksts ir parādīts šajā tabulā:

? Kopēšana
* Apgriešana
/ Nodošana metāllūžņos
Notiek atkārtots mēģinājums
F Norādīto bloku aizpildīšana
G Žurnāla faila ģenerēšana
+ Process ir pabeigts

Zem tā žurnālfailā ir iepriekš saglabāto bloku statusa norādes tālāk norādīto rakstzīmju veidā:

? Bloks nav izmēģināts
* Neapgrieztais bloks neizdevās
/ Neizmantotais bloks neizdevās
Sliktā sektora bloks neizdevās
+ Pabeigts bloks

Attēla faila atjaunošana jaunā blokā

Kad esat pabeidzis atkopšanas procesu un ieguvis attēla failu. Tagad, iespējams, vēlēsities to pārvietot uz jauno disku no bojāta diska. Lai pārvietotu attēla failu uz jaunu bloku, vispirms pievienojiet šo bloku sistēmai un pēc tam identificējiet bloka nosaukumu, izmantojot lsblk komandu.

Pieņemsim, ka tā ir /dev/sdb , izmantojiet šo komandu, lai kopētu attēlu uz jaunu bloku.

sudo ddrescue -f atgūšana.img / izstrādātājs / sdb logfile.log

The -f karodziņš tiek izmantots, lai pārrakstītu jauno bloku, ja ir kādi dati. Ņemiet vērā, ka žurnālfaila nosaukumam ir jābūt citam, lai tas būtu nošķirts no iepriekš saglabātā žurnālfaila.

Iepriekš minēto darbību var veikt arī, izmantojot dd , vēl viena spēcīga komanda, ko izmanto failu kopēšanai.

sudo dd ja =atkopšana.img no = / izstrādātājs / sdb

Pirms atjaunošanas ņemiet vērā, ka jaunajam blokam ir jābūt pietiekami lielam, lai saglabātu visu atjaunoto bloku; piemēram, ja atkopšanas bloks ir 5 GB, jaunajam blokam ir jābūt lielākam par 5 GB.

Ja atkoptais attēla fails rada daudz kļūdu, tās var labot, izmantojot fsck zināmā mērā komanda operētājsistēmā Linux. Operētājsistēmā Windows varat izmantot CHKDSK vai SFC komandas to darīt. Tomēr atkopšana ir atkarīga no bojātā faila ģenerēto kļūdu skaita.

Tagad ir pabeigts atkopšanas process un atjaunošana. Vēl viena svarīga lieta, kas jāņem vērā, ir tāda, ka bojātu bloku var atgūt tieši citā blokā, nevis izveidot attēla failu un pēc tam kopēt to jaunajā blokā. Nākamajā sadaļā es detalizēti apskatīšu šo procesu.

Bloka atkopšana uz citu bloku

Lai atjaunotu bloku tieši jaunā blokā, vispirms pievienojiet bloku sistēmai un vēlreiz izmantojiet lsblk komanda, lai identificētu bloka nosaukumu. Nepareizi bloku nosaukumi var izjaukt visu procesu, un jūs varat zaudēt datus.

Pēc avota bloka un mērķa bloka identificēšanas izmantojiet šo komandu, lai atkoptu bloku:

sudo ddrescue -d -f -r2 / izstrādātājs / [ avots ] / izstrādātājs / [ galamērķis ] backup.log

Pieņemsim /dev/sdb ir galamērķa bloks, tāpēc, lai kopētu /dev/sda direktoriju jaunajam bloka lietojumam:

sudo ddrescue -d -f -r2 / izstrādātājs / sda / izstrādātājs / sdb backup.log

Vēlreiz, pirms mēģināt veikt šo procesu, skatiet iepriekšējās sadaļās minētos kritiskos apsvērumus.

Konkrētu datu atkopšana no atgūtajiem attēlu failiem

Daudzos gadījumos datu atkopšanas mērķis ir atrast konkrētus failus no bojātiem diskdziņiem. Lai piekļūtu konkrētajam failam, ir jāpievieno attēla fails. Operētājsistēmā Linux atkopto attēla failu var izpētīt, izmantojot mount komandu.

Pirms attēla faila uzstādīšanas izveidojiet mapi vai direktoriju, kurā vēlaties izvilkt attēla faila saturu.

mkdir RecoveryMount

Pēc tam instalējiet attēla failu, izmantojot:

sudo mount -O cilpas atkopšana.img ~ / RecoveryMount

Karogs -o norāda opcijas, savukārt cilpas opcija tiek izmantota, lai attēla failu apstrādātu kā bloka ierīci.

Tagad jums ir piekļuve attēla faila saturam, kā parādīts nākamajā ekrānuzņēmumā.

Lai atvienotu bloku, izmantojiet umount komandu.

sudo umount ~ / RecoveryMount

Papildu funkcijas

Lai sāktu atkopšanu no noteikta punkta, izmantojiet -i karogs vai -ievade-pozīcija . Tam jābūt baitos, pēc noklusējuma tas ir 0 baiti. Tas ir svarīgi, lai atsāktu kopēšanu no noteikta punkta. Piemēram, ja vēlaties sākt kopēšanas procesu no 10 GB punkta, izmantojiet šo komandu.

sudo ddrescue -i10GiB / izstrādātājs / sda imagefile.img logfile.log

Lai definētu ievades ierīces maksimālo izmēru, -s tiks izmantots karogs. The -s apzīmē izmēru un to var izmantot arī kā -Izmērs baitos. Ja rīks nespēj atpazīt ievades faila lielumu, izmantojiet šo opciju, lai to norādītu.

sudo ddrescue -s10GiB / izstrādātājs / sda imagefile.img logfile.log

The – jautāt opcija var būt diezgan ērta, jo pirms kopēšanas procesa sākšanas tiek prasīts apstiprināt ievades un izvades blokus. Kā minēts iepriekš, sistēma blokiem dinamiski piešķir nosaukumus, un tie mainās atsāknēšanas laikā. Tātad šajā gadījumā šī opcija var būt noderīga.

sudo ddrescue -- jautājiet / izstrādātājs / sda imagefile.img logfile.log

Turklāt tālāk ir minēts dažu citu iespēju saraksts:

-R – otrādi Lai mainītu kopēšanas virzienu
-q – diezgan Lai apspiestu visus izvades ziņojumus
-in – daudzrunīgs Sīkāk, visi izejas ziņojumi
-lpp – iepriekš piešķirt Lai iepriekš piešķirtu krātuvi izvades failam
-P -datu priekšskatījums Jaunāko datu nolasīšanas displeja rindiņas noklusējuma ir 3 rindas

Kā darbojas ddrescue

Ddrescue izmanto jaudīgu atkopšanas algoritmu, kas ir sadalīts četrās fāzēs:

1. Kopēšana

2. Apgriešana

3. Kasīšana

4. Atkārtots mēģinājums

Ddrescue algoritma izpilde ir parādīta nākamajā attēlā.

Secinājums

The ddrescue ir spēcīgs atkopšanas rīks, ko izmanto, lai atgūtu datus no bojāta vai bojāta diska uz citu disku, kopējot datus. To var bez piepūles instalēt jebkurā Linux izplatīšanā, izmantojot noklusējuma pakotņu pārvaldnieku. Pirms šī rīka izmantošanas ievērojiet šajā rokasgrāmatā minēto svarīgo apsvērumu. Datu kopēšanas process ir vienkāršs, atvienojiet disku un izmantojiet komandu ddrescue ar avota diska nosaukumu un galamērķa diska nosaukumu. Neaizmirstiet izmantot žurnāla failu, jo tas kļūst diezgan noderīgi, lai atsāktu atkopšanas procesu.