[ LUGOS ] how to UNDELETE files on Linux ( aka how to save your
ownbutt :)))))
Roman Maurer
roman.maurer na hermes.si
Sre Dec 22 14:59:01 CET 1999
Igor wrote:
>
> However, there is some documentation in Tips-HOWTO that
> shows an unreliable way to rescue text. Here is the
> excerpt:
Da, tole je iz Tips-HOWTO, ki je preveden tudi v slovenščino,
glej <http://www.lugos.si/delo/slo/HOWTO-sl/Tips-HOWTO-sl.html>:
- - -
3.2 Obnavljanje zbrisanih datotek. Michael Hamilton, michael na actrix.gen.nz
Tu je trik, ki sem ga morali uporabiti že nekajkrat.
Obnovitev zbrisane tekstovne datoteke obupanega uporabnika.
Če po nesreči odstranite tekstovno datoteko, npr. neko elektronsko
sporočilo ali rezultate nočne programerske seanse, ni nujno, da je vse
izgubljeno. Če je datoteka bila na disku in na njem ostala več kot 30
sekund, je njena vsebina mogoče še vedno na particiji diska.
Vsebino datoteke na particiji diska lahko poiščete s pomočjo ukaza
grep.
Na primer, pred kratkim sem zbrisal del elektronskega sporočila. Takoj
sem prekinil vse operacije, ki bi particijo lahko spremenile: v tem
primeru sem se samo izognil shranjevanju datotek, prevajanju, itd. V
drugih primerih sem sistem moral celo privesti na način enega samega
uporabnika in odklopiti datotečni sistem.
Na particiji diska sem potem uporabil ukaz egrep: v mojem primeru je
bilo elektronsko sporočilo v imeniku /usr/local/hime/michael. Iz
izhoda ukaza df sem lahko ugotovil, da je ta na particiji /dev/hdb5:
sputnik3:~ % df
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/hda3 18621 9759 7901 55% /
/dev/hdb3 308852 258443 34458 88% /usr
/dev/hdb5 466896 407062 35720 92% /usr/local
sputnik3:~ % su
Password:
[root na sputnik3 michael]# egrep -50 'ftp.+COL' /dev/hdb5 > /tmp/x
Kadar delam s particijami diska, sem zelo previden. Torej sem si vzel
odmor in se pred potrditvijo prepričal, da res razumem pomen ukaza. V
tem primeru je elektronsko sporočilo vsebovalo besedo 'ftp', ki ji je
sledil tekst in na koncu še beseda 'COL'. Sporočilo je bilo dolgo
okrog 20 vrstic, torej sem uporabil 50, da bi dobil vse vrstice okrog
izraza. Včasih sem uporabljal tudi 3000 in s tem zagotovil, da sem
dobil nazaj vse vrstice izvorne kode. Rezultat sem iz ukaza egrep
usmeril na drugo particijo diska in s tem preprečil, da bi se
sporočilo, ki ga iščem, prepisalo.
Izhod sem preiskal z uporabo ukaza strings:
strings /tmp/x | less
in seveda našel elektronsko sporočilo.
Ta metoda ni zanesljiva. Mogoče je bilo nekaj, ali pa celoten prostor
na disku, ponovno uporabljeno.
Ta zvijača je verjetno uporabna samo na sistemih z enim uporabnikom.
Na sistemih z več uporabniki z visoko dejavnostjo diskov se je mogoče
prostor na disku, ki ste ga sprostili, ponovno porabil. Prav tako
večina izmed nas ne more kar tako preprečiti uporabe računalnika
ostalim uporabnikom, kadar želimo obnoviti neko datoteko.
Na domačem sistemu me je ta zvijača rešila v približno treh primerih v
zadnjih nekaj letih po navadi takrat, ko sem po pomoti zavrgel
rezultate celodnevnega dela: če moje delo preživi do neke točke, kjer
imam občutek, da sem naredil pomemben napredek, to delo shranim na
disketo in te zvijače sploh ne uporabljam pogosto.
- - -
--
Pozdrav,
Roman
Dodatne informacije o seznamu Starilist