Panašus LVM momentinis vaizdas į įprastą blokavimo įrenginį

Eikite į klausimą, ar jis nėra suinteresuotas istorija

Po nesėkmingo 2 diskų praradimo RAID 4 RAID 4 masyve 4, aš patekau į tam tikrą voodoo, kad galėčiau gauti kuo daugiau duomenų.

Pirmasis diskas, rodantis silpnųjų vietų požymius, buvo pakeistas, o atkūrimo metu (~ 80%), antrasis diskas nepavyko kai kuriuose mirusiuose sektoriuose.

Trumpai tariant, dabar aš turiu du diskus (2 ir 4) nuoseklioje būsenoje. Vienas (3) yra sinchronizuotas, bet su blogais sektoriais viduryje. Pastarasis (1) yra suderintas tik iš dalies dėl restruktūrizavimo proceso. Diskai yra 1,5 Tb visam 4.1 Tb masyvui.

Išbandę visas tik skaitytinas voodoo konfigūracijas 234, 124 ir 1234, galėjau gauti daug svarbių duomenų. (Tai sudaro tik 100 Gb apskritai 4.1 Tb).

Dabar kitas žingsnis yra pabandyti atkurti kai kurias failų sistemas (reiserfs), kad pamatytumėte, ar galiu gauti daugiau duomenų. Santraukos yra niokojančios. Ir aš turiu tris darbo diskus skirtingose ​​valstybėse, kad bandytumėte.

Taigi, į klausimą

Ar yra būdas užfiksuoti bet kokio md bloko įrenginio tipą ir dirbti su juo nekeičiant „md“ įrenginio?

Kai kurie punktai:

  • Nesvarbu, kad spektaklis labai lėtas.

  • Turiu 2 * 2 TB atminties išoriniuose laikinuose diskuose, kurie gali būti naudojami „momentiniam vaizdui“ pakeisti.

  • Neturiu pakankamai vietos kopijuoti visą įrenginį (md) į kitą vietą ir su juo padaryti tūrį lvm. (Ne kiekvieno disko vieta atskirai)

  • Nebūtina būti patikima laiku, momentinė nuotrauka bus ištrinta po duomenų atkūrimo (jei bus).

  • Na, manau, kad tai suprantama: turiu tik pasakyti tik md ir tada atmesti pakeitimus.

Bet kokios idėjos?

Ačiū!

5
28 сент. Alexandre Ravey yra nustatytas 28 sep . 2011-09-28 13:46 '11, 13:46, 2011-09-28 13:46
@ 2 atsakymai

Naudokite įrenginio momentinės kopijos tikslinę kopiją. Tiesiog turėkite omenyje, kad jis nebus užmaskuotas iš bazinių blogų diskų įvesties-išvesties klaidų, todėl tai geriausia geriems diskams su sugadintomis failų sistemomis.

tl; dr - praleisti tris mano fono dalis.

Naujausias įvykis, su kuriuo susidūriau, taip pat apėmė RAID5 su 4 diskais, bet USB pakete. Jis buvo suformatuotas naudojant NTFS ir ironiškai rodomas 640 gigabaitų disko vaizdas, kuris buvo atkurtas iš disko su gedimu tolerančiu nešiojamuoju kompiuteriu naudojant gddrescue, kurio metu buvo pranešta apie 300 GB disko gedimą. Nepadariau gelbėjimo, todėl prieš pakvietus padėti, buvo išsiųstas blogas nešiojamas kompiuteris.

Atvykau ir turėjau rasti būdą, kaip ribotą laiką gauti kuo daugiau vaizdo failų, kai turėjau prieigą prie RAID >

Man buvo labai naudinga išbandyti keletą tarpusavyje nesuderinamų destruktyvių metodų, siekiant rasti geriausią sprendimą.

Įrenginio žemėlapio fotografavimo tikslas yra naudoti „dm-snapshot“ branduolio modulį, kuris atlieka kopijavimo-rašymo operaciją blokų lygmeniu. Mano žingsniuose dirbsiu su sugedusiu / dev / failing disku. Jums reikės pateikti pakankamai didelį bloką, kad galėtumėte išlaikyti pakeitimus, kuriuos aš vadinsiu „dev / cow“. Svarbu, kad pakartotinai nenaudotumėte momentinių vaizdų išimties parduotuvės kitiems jūsų sukurtiems kopijavimo-rašymo įrenginiams.

  # Make it much harder to accidentally overwrite anything # Run on all partition sub-devices as well, if applicable 1. blockdev --setro /dev/failing # Create /dev/mapper/top 2. echo 0 `blockdev --getsz /dev/failing` snapshot /dev/failing /dev/cow p 4 | dmsetup create top # Manipulate /dev/mapper/top as you wish # Tear-down 3. dmsetup remove top 

Pateikiu dvi alternatyvas kuriant / dev / cow:

a Naudokite retą failą

  # Create a sparse file 1. dd if=/dev/zero bs=1048576 count=0 seek=size_in_MB of=tempfile # Print name of next unused loop device 2. losetup -f # Associate the file with a loop device 3. losetup -f tempfile # Use as /dev/cow # Use the name from #2 here 4. losetup -d /dev/loopX 5. rm tempfile 

B. Naudojant „zram“ branduolio modulį (žr. „Dokumentaciją“, kai pritaikote „ramzswap“ arba „compcache“!)

  # Create 4 of them - zram0-3 (you may run into a need for more than one) 1. modprobe zram num_devices=4 # Set size 2. echo $((1048576*size_in_MB)) > /sys/block/zram0/disksize # Associate with a loop device (dmsetup will fail with zramX but not loopX!) 3. losetup -f 4. losetup -f /dev/zram0 # Use as /dev/cow # Use the name from #3 here 5. losetup -d /dev/loopX 6. echo reset > /sys/block/zram0 

Savo laiko ribotoje situacijoje turėjau kažkur nukopijuoti 300 GB vaizdą, bet aš neturėjau to vietos, todėl aš ją išspaudžiau (iki 25 GB).

Jei kada nors reikia laikyti suspausto tik blokuojamo įrenginio kopiją, kad galėtumėte vėliau jį naudoti nesukuriant tarpinių failų, siūlau naudoti squashfs. Išjunkite įrenginį į 4 GB, naudodami (un) chunkfs (reikia FUSE) ir paleiskite mksquashfs kiekviename fragmente atskirai. Taigi jis gali būti saugomas FAT32 arba NTFS tomuose nenaudojant centrinio procesoriaus iš ntfs-3g, sukuriant didelius failus. Rekomenduoju patikrinti gautus failus ir galbūt bandyti par2, jei norite pridėti redundanciją.

Norint surinkti prietaiso turinį, greičiausiai reikės daugiau nei standartiniai įrenginiai su kilpa 8. Norėdami tai padaryti, modprobe kilpa max_loop = 2048 arba, jei ji yra sukompiliuota į branduolį, pridėkite max_loop = 2048 į savo branduolio komandinę eilutę. Pritvirtinkite kiekvieną skvošą ir prijunkite failus viduje prie kilpinių įrenginių. Galiausiai naudokite dmsetup, kad susietumėte juos naudojant linijinį tikslą. (Perskaitykite žmogų „dmsetup“ ir, pageidautina, prisiminkite „-r“ parinktį, kitaip įrašai bus ištrinti, o ne iš karto.

11
24 янв. atsakymas pateikiamas 24 d 2012-01-24 10:32 '12, 10:32 2012-01-24 10:32

Jei turite pakankamai vietos kitoje saugykloje, aš tiesiog sukuriu dd .

0
28 сент. atsakymas pateikiamas Marcin 28 rugsėjo. 2011-09-28 16:42 '11 at 16:42 2011-09-28 16:42