Dan Lukes wrote:
On 04/15/10 10:17, Dan Lukes:
Sel jsem na to nasledovne:
for blk in $blocks
do
blk=$(expr 4 \* $blk)
dd if=/dev/mirror/gm0s1e of=/tmp/file-${blk}.blk skip=${blk} bs=512
count=32
dd if=/dev/mirror/gm0s1e skip=${blk} bs=512 count=32 >> /tmp/file.dump
done
Dole to mas trochu sofistikovanejsi (samo si to zjisti ty konstanty) a
vyporada se to i se situaci, kdy je poslednim blokem fragment.
Ale nepisu abych se chlubil ze umim psat scripty - prisel jsem pri tom
na jedno varovani -
1. fsdb pracuje s tim co je ulozeno na disku
2. ne vsechno se uklada hned
Pri psani toho scriptiku jsem si jim totiz vypisoval jeho sameho - a
relativne casto se mi stavalo, ze fsdb nevypsal ZADNY blok. To proto, ze
od posledni editace souboru jeste nebyly cache systemu zapsane na disk -
a z pohledu dat uloznych na disku tomu souboru jeste zadny blok
nenalezi. Takze - pred vypisem se rozhodne vyplati "syncnout" a ani to
nemusi pomoci.
Diky. Je to vskutku trosku elegantnejsi a automatizovanejsi varianta,
nez ta moje. Nicmene jak jsem zjistil, i moje varianta byla funkcni.
Prectene direct + indirect bloky daly dohromady skutecne ten soubor
(akorat ma na konci jeste nejake null bajty navic)
Celou dobu jsem se snazil vypatrat soubor, o kterem jsem si myslel, ze
je smazany a on smazany nebyl ;o) (takze jsem si mohl usetrit spoustu
prace, ale aspon jsem se zase naucil neco noveho a treba se to bude
nekdy hodit)
Proste ten soubor byl nekde jinde, nez jsem myslel, ze by mel byt a
fstat nevypisuje celou cestu k souboru. Kdyz jsem nainstaloval lsof, tak
byla cela cesta odhalena a soubor na disku nalezen.
Diky tomu jsem tedy mohl porovnat skutecny soubor s tim, co jsem
vydoloval pomoci fsdb a dd.
Zaroven jsem otestoval i icat ze SleuthKit nad image toho oddilu (pomoci
dd) a nad tim image souborem icat funguje spolehlive. Moc mi nejde do
hlavy, proc nelze pouzit i na disk. Nicmene jsem tedy dostal stejny
soubor hned nekolika zpusoby, takze ted uz aspon vim, co kdy a jak pouzit.
Vysledkem pro me je ale dalsi neznama, kterou uz snad ani nebudu zkouset
rozlustit - je to binarka a ne shellscript, takze zase nevim, co to
vlastne presne dela. Vim jen to, ze se to snazi pripojovat na jeden
server mnoha paralelnimi spojenimi a posilat velky objem dat. Pripada mi
to, ze se "jen" nekdo snazil o flood na ten cilovy server. Ale jestli to
dela i neco dalsiho, to uz asi nezjistim.
Kdyby mel o ten soubor (plus par dalsich, co jsem tam nasel) nejaky
zvedavec zajem, mohu je poskytnout k analyze :)
Mirek
--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l