2007-12-30

Katkiselt kõvakettalt info taastamine koduste vahenditega

Avastasin, et mul on sõprade jaoks olulist ja kasulikku oskusteavet tekkinud, mille võib ka Googeldajate jaoks kirja panna. Algne tööülesanne oli see, et tuleb Agne masinalt, mis pilti ette ei võta, tõsta info teise masinasse. Järgneb kohutav kogus segast kontsentreeritud arvutijuttu edasijõudnutele.

Esimene katse toimus eeldusel, et kõvaketas on terve. Kuna tegemist oli laptopi kõvakettaga, katsetasin esimeses voorus Windowsi all lihtsalt USB kõvakettasahtlis (ehk siis minu 40Gb mälupulga heas sõbra abil) seda külge võtta. Osaliselt võttis külge, aga failiõigustega olid asjad väga halvasti ja ei saanud lugeda ühe kasutaja kataloogi — lisaks pani lugemine rämedalt pange.

Uus katse Ubuntu all — USB kõvaketas külge, automaagilise mountimisega tekkis probleeme, sest kõvakettal on märge, et ta on alles küljes. Seega käsurealt käsk:
sudo mount -t ntfs /dev/sdg1 /mnt/foo -o force
Tõlge: sudo: juurkasutaja õigustes käivitada; -t ntfs: Failisüsteem ntfs; /dev/sdg1: USB seadme nimi device'ide kataloogis; /mnt/foo: kataloog, kuhu ketas külge panna: -o force: käsib vägisi külge panna isegi kui ketas on kasutusse märgitud.

Kuna ketas oli jukerdanud, otsustasin, et tuleb teha täielik image sellest. Image'i tegemiseks on käsk dd - device direct oli vist maagiline sõna. Infile on if ja outfile on of ja siis võrdusmärgi järgi kirjutad, et mis on antud faili nimi:
sudo dd if=/dev/hdg of=kettafail.img

Väike ääremärkus: Ketas koosneb partitsioonidest ja kui kettaseade ise on "sda" nimega, siis "sda1" on selle esimene partitsioon. Kui ketas on korras, on teil lihtsam neid numbrilisi kasutada — ilma numbrita on siis terve ketas koos kõigi tema komponentidega. Esimeses näites panin ma mountiga külge partitsiooni; teisel puhul kopeerisin kogu ketast: märgake erinevust. Ahjaa, nende device'ide lugemiseks on teil tarvis juurkasutaja õigusi, märkate seda kohe, kui teil neid niisama lugeda ei lubata. Tähelepanek: Parajasti mounditud ketaste kopeerimine ei ole hea mõte.


Siis selgus, et USB seade, millega ma läppari ketast ühendasin ei tööta, kui ketas on vigane. Esimese veani jõudes katkestatakse lugemine. (dmesg nimelisega saate käsurealt kerneli sellesisulisi teateid lugeda.) Arvuti ütleb bad sector, minule meenub kohe rdd - Robust DD. Programm, mis teeb sedasama, mida dd, kuid saab hakkama ka vigaste kohtadega. Ubuntu jaoks on see paketina olemas. Seega installin ära:
sudo apt-get install rdd
Kopeerimiseks lugesin veidi manuaali, aga käsk, mis andsin oli midagi sellist:
sudo rdd-copy -P 3 -n 6 /dev/sdg kettapilt.img
P võti ütleb, et iga 3 sek tagant saan progressiraporti ja n 6, et vigaseid kohti püütakse 6 korda lugeda ja siis asendatakse vigane koht 0-bittidega. Küsimuse peale vastake yes, yes, logida te ei (ilmselt) taha ega ka erinevaid räsisid, eeldusel, et te pole korrakaitsjate esindajad või lihtsalt korralikud ja paranoilised.

Rdd-copy peaaegu töötas. Ainus nõrk lüli oli selles, et USB seade vigase ketta esimese vea juures pildi tasku pani. Täielik kimbatus. Läppari pisikese kõvaketta jaoks mul üleminekukaablit ei ole ja seega ma seda tavamasinasse ühendada ei saa.

Õnneks pakub Rdd üle võrgu kopeerimise võimalust. Käib see nii, et tehakse klient-server süsteem. Server kuulab ja teenindab klientide soovi servermasinasse kopeerida ja kliendid siis ühenduvad sinna suurde masinasse, mis pakub hoiustamisteenust.

Kõigepealt serveri ülespanek. See on hästi lihtne (ei pea olema juurkasutaja):
rdd-copy -S
Ja siis yes, yes, eeldusel et te pole korrakaitse esindajad või lihtsalt korralikud ja paranoilised.

Selleks, et läppar ilusti klienti jooksutada saaks, tuleb teha sedasi, et kruvite selle kõvaketta tagasi arvutisse, võtate Ubuntu plaadi (teil on ju Ubuntu plaat! või siis suvaline muu CD pealt buuditav mõistlik Linux) ja buudite masina selle pealt Linuxisse. Eeldan, et kuna te nii kaugele lugenud olete, siis te seda oskate. Serveri masinast tuleb see rdd-copy panna läpparisse — seda on kõige lihtsam teha mälupulgaga. (Lihtsalt kopeerida /usr/bin/rdd-copy mälupulgale ja siis läppar võtab selle kenasti külge, kopige töölaua peale see igaks juhuks ja jookseb ilusti sealt)

Siis käivitamiseks tuleb teha (pärast cd Desktop käsku) järgmine maagiline vormel (minul umounti polnud vaja teha, sest sda1 ei olnud mounditud, teil ei pruugi nii hästi minna):
sudo ./rdd-copy -C /dev/sda 192.168.1.113:kettapilt.img
See 192.168.1.113 on serverarvuti IP-aadress — IPdega juntimist peate ise välja mõtlema.

Siis ootate tükk aega. Minul kopeeris edukalt ära, 5 sektorit nullis. Siis oli vaja faile kätte saada. Kuna olin kopeerinud terve ketta ja mitte partitsiooni, siis ei saanud ma seda niisama loopbackina külge panna (see võtmesõna on siis selle kohta, kui failis oleva kettasüsteemi tahad mountida: mõelge mida teeb dd if=/dev/zero of=ketas.img count=1G; mkfs.ext3 ketas.img ; mount ketas.img -o loop)

Partitsioonifaili (eeldusel, et tervet ketast te ei kopeerinud) mountimine on veidi lihtsam:
sudo mount partitsioon.img -t ntfs -o loopback,force /mnt/foo

Kettafaili mountimine on keerulisem: peate ütlema, et mitmendal sektoril see õige partitsioon algab. fdisk -l ütleb mitu sektorit on soovitud partitsiooni nihe algpunkti suhtes, siis korrutate selle 512-ga, et saada nihe baitides (minu näites oli see 1), siis saate selle arvu panna loopbacki offset argumendiks:
sudo mount partitsioon.img -t ntfs -o loopback,force,offset=512 /mnt/foo

Vähemasti nii oli see teoorias. Tegelikult käisin veidi ringiga ja pidin installima ka toreda asja nimega Autopsy, mis Sleuthkit nimelise utiliidistiku suur sõber oli, sellega case'i avama, kettaimage'i külge võtma, avastama, et saab igast toredat märksõnaotsingut ja värki koduste tasuta vahenditega teha ja siis lõpuks kuskilt välja uurima, et tegelik offset on hoopis 63 sektorit ehk siis 63*512=32256 baiti.
Seda kõike saaks ka kiiremini:
sudo apt-get install sleuthkit
sudo mmls kettaimage.img
See mmls annab välja kettaimage'i nihke sektorites, korrutustehe ja saategi:
sudo mount partitsioon.img -t ntfs -o loopback,force,offset=32256,iocharset=utf8 /mnt/foo

See loodetavasti töötab, minul töötas, saingi ketta külge ja andmed sealt kätte. Muidu ilmselt seesama Autopsy asi ehk aitab, aga seal ma teid rohkem edasi ei aita, eksperimenteerige ja vaadake ise. Minul läks ses mõttes hästi, et kogu NTFSi osa kettast oli hästi säilinud — ma pole kindel, et autopsy on võimeline vigast NTFSi failitabelit (või misiganes seal täpselt on) taastama.

Loodan, et teil eelnevat kunagi vaja ei lähe. Teine soovitus: mängige nende ketaste ja imagetega — see on väga lahe tegevus ja tasub ennast sajaga ära, kui tunnetus kätte tuleb, et mis toimub.

Täiendus (19.okt.2009): Data Recovery Ubuntu wikis jätta meelde.

Jess, Paypal eestis! Ei.. oodake..

Vaatasin täna rõõmuga, et Paypal on otsustanud Eestiga veidi tegemist teha ja blogi teinud ja siis noh kohe eeldasin, et lõpuks ometi saan ma seda teenust mõistlikult kasutada, et kannan raha üle ja saan seda vastu ja toetan kõiki oma lemmik-internetisaite ja...

Täielik mögajutt, ütleksin.

Kui teie nimetaksite "eestisse tulekuks" seda, et te inglisekeelsele lehele palkate reklaamfirmast neegrikese, kes kirjutab, et "Nii saate ingliskeelsel lehel omale konto teha", siis olen mina seda kõike teisiti ette kujutanud.

Mul on vaja sellist lahendust, mis ei eelda, et mul on olemas krediitkaart. Sest seda ei ole ja seda ei tule kuni ma tõesti ilma ei saa. Tahan deebetkaardiga oma arvele asju kanda. Lisaks eeldaksin "eestisse tuleku" puhul paypalilt ka eestikeelset kodulehekülge. Nice try, poole aasta pärast uus katse siis?

Moraal: Eesti internetipanganduse süsteem on ikka veel täiesti ülimuslikult mõnus. Hea töö!

2007-12-18

Elektrišokirelvadest

Märkasin täiesti arusaamatut uudist:
"Praegu on Eestis elektrišokirelvade kasutamine seadusega keelatud, kuid peagi võidakse need võtta politsei arsenali."

Milleks? Taseriga on ühendriikides täiesti räigelt ebameeldivaid õnnetusi juhtunud, kus politseinikud taserdavad suhteliselt süütuid inimesi suhteliselt täiesti surnuks. Kuna relvale on loodud "ohutu relva" maine, siis kasutatakse seda värki ka kuidagi kergekäelisemalt. Ühendriigid suured-laiad muidugi ja statistiliselt on neil õnnetusi rohkem, aga kuidagi ei tahaks, et meil politsei kedagi kogemata voolu alla paneb ja too keha viskab..

Mida teha jõululaupäeval

Ka sina ei pea jõule?

Korraldan enda pool väikese võrgupeo, mis saab toimuma selleks, et jõuluvana minu juurde ei satuks.

Triin on vanemate juures, meie pere jõulukohtingu sain edasi nihutatud ning tulemuseks on võimalus 24ndal (vastava huvi korral ka eelneval ja järgneval päeval) suuremat sorti virtuaallihurlusega tegeleda. Plaanis on CoD4, kui raalid välja veavad; CoH ja selle järg CoH:OF või koguni minu isiklik väike plaan: Koostöövormis Hellgate: London.

Huvi korral leiate mind skaibist või telefonil või Gmaili teel.

2007-12-10

Hiina pani ära

Tundub, et Hiina on saanud pisikese diplomaatilise võidu ja löönud õhtumaade kirstu järgmise naela: Aafrika riigid keelduvad kaubanduslepingust Euroopaga

This page is powered by Blogger. Isn't yours?