Namestite Scalpel (orodje za obnovitev datotečnega sistema) za obnovitev izbrisanih datotek/map v Linuxu


Velikokrat se zgodi, da po naključju ali pomotoma pritisnemo 'shift + delete' na datoteke. Po človeški naravi imate običajno navado, da uporabite "shift + Del", namesto da uporabite samo možnost "Delete". Pravzaprav sem imel ta incident nekaj dni nazaj. Delal sem na projektu in svojo delovno datoteko shranil v imenik. V tem imeniku je bilo veliko neželenih datotek in jih je treba trajno izbrisati. Tako sem jih začel brisati enega za drugim. Med brisanjem teh datotek sem pomotoma pritisnil »shift delete« na eno od svojih pomembnih datotek. Datoteka je bila trajno izbrisana iz mojega imenika. Razmišljal sem, kako obnoviti izbrisane datoteke, in nisem vedel, kaj storiti. Skoraj sem porabil veliko časa za obnovo datoteke, vendar nisem imel sreče.

Ker sem vedel nekaj tehničnega znanja, sem vedel, kako delujejo datotečni sistem in trdi disk. Ko datoteko naključno izbrišete, se vsebina datoteke ne izbriše iz računalnika. Pravkar je odstranjena iz mape baze podatkov in datoteke ne morete videti v imeniku, vendar še vedno ostane nekje na trdem disku. V bistvu ima sistem kazalec seznama na bloke na pomnilniški napravi še vedno vsebuje podatke. Podatki se ne izbrišejo iz naprave za shranjevanje blokov, razen če in dokler ne prepišete z novo datoteko. Po tem stališču sem izdal, da moja izbrisana datoteka lahko še vedno ostane nekje na neindeksiranem območju trdega diska. Priporočamo pa, da takoj odklopite napravo, takoj ko ugotovite, da ste izbrisali katero koli pomembno datoteko. Unmount vam pomaga preprečiti, da bi blokirane datoteke prepisali z novo datoteko.

V tem primeru nisem želel preveč zapisovati teh podatkov, zato sem raje iskal po trdem disku, ne da bi ga namestil.

Običajno v operacijskem sistemu Windows dobimo na tone orodij tretjih oseb za obnovitev izgubljenih podatkov, v Linuxu pa le malo. Vendar Ubuntu uporabljam kot operacijski sistem in je zelo težko najti orodje, ki obnovi izgubljeno datoteko. Med raziskovanjem sem spoznal orodje 'Scalpel', ki deluje skozi celoten trdi disk in obnovi izgubljeno datoteko. Izgubljeno datoteko sem namestil in uspešno obnovil s pomočjo orodja Scalpel. Moram reči, da je res neverjetno orodje.

To se lahko zgodi tudi pri vas. Zato sem si mislil deliti svoje izkušnje z vami. V tem članku vam bom pokazal, kako obnoviti izbrisane datoteke s pomočjo orodja za skalpel. Torej gremo.

Kaj je orodje za skalpel?

Scalpel je odprtokodna obnovitev datotečnega sistema za operacijski sistem Linux in Mac. Orodje obišče blokovno shrambo zbirke podatkov, identificira izbrisane datoteke in jih takoj obnovi. Poleg obnovitve datotek je uporaben tudi za digitalno forenzično preiskavo.

Kako namestiti Scalpel v Debian/Ubuntu in Linux Mint

Če želite namestiti Scalpel, odprite terminal tako, da na namizju izvedete “CTrl + Alt + T” in zaženite naslednji ukaz.

$ sudo apt-get install scalpel
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  scalpel
0 upgraded, 1 newly installed, 0 to remove and 390 not upgraded.
Need to get 0 B/33.9 kB of archives.
After this operation, 118 kB of additional disk space will be used.
Selecting previously unselected package scalpel.
(Reading database ... 151082 files and directories currently installed.)
Unpacking scalpel (from .../scalpel_1.60-1build1_i386.deb) ...
Processing triggers for man-db ...
Setting up scalpel (1.60-1build1) ...
[email :~$

Namestitev skalpela v RHEL/CentOS in Fedora

Če želite namestiti orodje za obnovo skalpela, morate najprej omogočiti repozitorij epel. Ko jo omogočite, jo lahko namestite, kot je prikazano.

# yum install scalpel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.01link.hk
 * epel: mirror.nus.edu.sg
 * epel-source: mirror.nus.edu.sg
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package scalpel.i686 0:2.0-1.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================================================
 Package		Arch		Version			Repository		Size
==========================================================================================================================================================
Installing:
 scalpel                i686            2.0-1.el6               epel                    50 k

Transaction Summary
==========================================================================================================================================================
Install       1 Package(s)

Total download size: 50 k
Installed size: 108 k
Is this ok [y/N]: y
Downloading Packages:
scalpel-2.0-1.el6.i686.rpm                                                           |  50 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : scalpel-2.0-1.el6.i686							1/1 
  Verifying  : scalpel-2.0-1.el6.i686                                                   1/1 

Installed:
  scalpel.i686 0:2.0-1.el6                                                                                                                                

Complete!

Ko je skalpel nameščen, morate urediti besedilo. Privzeto ima pripomoček za skalpel lastno konfiguracijsko datoteko v imeniku '/ etc', celotna pot pa je "/etc/scalpel/scalpel.conf" ali "/etc/scalpel.conf". Opazite, da je vse komentirano (#). Torej, preden zaženete skalpel, morate razkomentirati obliko datoteke, ki jo potrebujete za obnovitev. Razkomentirajte celotno datoteko, saj je dolgotrajna in bo ustvarila ogromne napačne rezultate.

Recimo, na primer, da želim obnoviti samo datoteke ».jpg«, zato preprosto odkomentirajte razdelek ».jpg« za konfiguracijsko datoteko skalpela.

# GIF and JPG files (very common)
        gif     y       5000000         \x47\x49\x46\x38\x37\x61        \x00\x3b
        gif     y       5000000         \x47\x49\x46\x38\x39\x61        \x00\x3b
        jpg     y       200000000       \xff\xd8\xff\xe0\x00\x10        \xff\xd9

Pojdite na terminal in vnesite naslednjo sintakso. '/ Dev/sda1' je mesto naprave, od koder je datoteka že izbrisana.

$ sudo scalpel /dev/sda1-o output

Stikalo '-o' označuje izhodni imenik, kamor želite obnoviti izbrisane datoteke. Pred izvajanjem katerega koli ukaza se prepričajte, da je ta imenik prazen, sicer vam bo prišlo do napake. Rezultat zgornjega ukaza je.

Scalpel version 1.60
Written by Golden G. Richard III, based on Foremost 0.69.

Opening target "/dev/sda1"

Image file pass 1/2.
/dev/sda1:   6.1% |***** 		|    6.6 GB    39:16 ETA

Kot vidite, skalpel zdaj izvaja svoj postopek in potreben bo čas za obnovitev izbrisane datoteke, odvisno od prostora na disku, ki ga želite optično prebrati, in hitrosti naprave.

Vsem priporočam, da imate navado, da namesto »Shift + Delete« uporabljate samo delete. Ker kot rečeno je preventiva vedno boljša od zdravljenja.