Asenna Scalpel (tiedostojärjestelmän palautustyökalu) palauttaaksesi poistetut tiedostot/kansiot Linuxissa


Usein käy niin, että painamme vahingossa tai vahingossa 'vaihto + poista' tiedostojen kohdalla. Ihmisluonnesta johtuen sinulla on tapana käyttää vaihto + Del pelkän Poista-vaihtoehdon sijaan. Itse asiassa minulla oli tämä tapaus muutama päivä sitten. Työskentelin projektin parissa ja tallensin työtiedostoni hakemistoon. Hakemistossa oli monia ei-toivottuja tiedostoja, ja ne on poistettava pysyvästi. Joten aloin poistaa niitä yksitellen. Kun poistin näitä tiedostoja, painoin vahingossa 'vaihtopoisto' johonkin tärkeästä tiedostostani. Tiedosto poistettiin pysyvästi hakemistostani. Mietin kuinka palauttaa poistetut tiedostot, enkä tiennyt mitä tehdä. Vietin melkein paljon aikaa tiedoston palauttamiseen, mutta ei onnea.

Tiesin hieman teknistä tietämystä tiedostojärjestelmän ja kiintolevyn toiminnasta. Kun poistat tiedoston vahingossa, tiedoston sisältö ei poistu tietokoneeltasi. Se on juuri poistettu tietokantakansiosta, etkä näe tiedostoa hakemistoon, mutta se pysyy silti jossain kiintolevylläsi. Periaatteessa järjestelmässä on luettelo osoitin lohkoista tallennuslaitteessa on edelleen tiedot. Tietoja ei poisteta lohkotallennuslaitteelta, ellet ja ennen kuin kirjoitat päälle uudella tiedostolla. Tässä vaiheessa myönsin, että poistettu tiedosto saattaa silti jäädä jonnekin kiintolevyn indeksoimattomalle alueelle. On kuitenkin suositeltavaa irrottaa laite välittömästi heti, kun huomaat poistaneesi minkä tahansa tärkeän tiedoston. Unmount auttaa sinua estämään estettyjen tiedostojen korvaamisen uudella tiedostolla.

Tässä skenaariossa en halunnut kirjoittaa näitä tietoja yli, joten halusin etsiä kiintolevyltä asentamatta sitä.

Normaalisti Windowsissa saamme runsaasti kolmannen osapuolen työkaluja kadonneiden tietojen palauttamiseen, mutta Linuxissa vain muutamia. Käytän kuitenkin Ubuntua käyttöjärjestelmänä, ja kadonneiden tiedostojen palauttamiseen on erittäin vaikea löytää työkalua. Tutkimukseni aikana opin tuntemaan Scalpel-työkalun, joka kulkee koko kiintolevyn läpi ja palauttaa kadonneen tiedoston. Asensin ja onnistuin palauttamaan kadonneen tiedoston Scalpel-työkalun avulla. Se on todella upea työkalu, minun täytyy sanoa.

Tämä voi tapahtua myös sinulle. Joten ajattelin jakaa kokemukseni kanssasi. Tässä artikkelissa näytän sinulle kuinka palauttaa poistetut tiedostot skalpellityökalun avulla. Joten näillä mennään.

Mikä on skalpelityökalu?

Scalpel on avoimen lähdekoodin tiedostojärjestelmän palautus Linux- ja Mac-käyttöjärjestelmille. Työkalu vierailee lohkotietokannan tallennustilassa ja tunnistaa siitä poistetut tiedostot ja palauttaa ne välittömästi. Tiedostojen palauttamisen lisäksi se on hyödyllinen myös digitaalisessa rikosteknisessä tutkimuksessa.

Scalpelin asentaminen Debian/Ubuntuun ja Linux Mintiin

Asenna Scalpel avaamalla pääte painamalla "CTrl+Alt+T" työpöydältä ja suorittamalla seuraava komento.

sudo apt-get install scalpel
Näytelähtö
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) ...
tecmint@tecmint-Latitude-D630:~$

Scalpelin asentaminen RHEL/CentOS:ään ja Fedoraan

Jotta voit asentaa skalpellin palautustyökalun, sinun on ensin otettava epel-varasto käyttöön. Kun se on otettu käyttöön, voit asentaa sen kuvan osoittamalla tavalla tekemällä yum.

yum install scalpel
Näytelähtö
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!

Kun skalpelli on asennettu, sinun on muokattava tekstiä. Oletusarvoisesti scalpel-apuohjelmalla on oma asetustiedosto hakemistossa /etc ja koko polku on "/etc/scalpel/scalpel.conf" tai "/etc" /scalpel.conf". Voit huomata, että kaikki on kommentoitu (#). Joten ennen skalpellin suorittamista sinun on poistettava palautettavan tiedostomuodon kommentit. Kuitenkin koko tiedoston poistaminen vie aikaa ja tuottaa valtavia vääriä tuloksia.

Oletetaan esimerkiksi, että haluan palauttaa vain '.jpg'-tiedostot, joten poista yksinkertaisesti '.jpg'-tiedosto-osion kommentti skalpellin asetustiedostoa varten.

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

Mene terminaaliin ja kirjoita seuraava syntaksi. /dev/sda1 on laitteen sijainti, josta tiedosto on jo poistettu.

sudo scalpel /dev/sda1-o output

-o-kytkin osoittaa tuloshakemiston, johon haluat palauttaa poistetut tiedostot. Varmista, että tämä hakemisto on tyhjä ennen kuin suoritat mitään komentoja, muuten se antaa sinulle virheilmoituksen. Yllä olevan komennon tulos on.

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

Kuten näet, skalpelli suorittaa nyt prosessiaan, ja poistetun tiedoston palauttaminen vie aikaa skannattavan levytilan ja koneen nopeuden mukaan.

Suosittelen, että käytätte vain poistoa "Vaihto + Delete" sijaan. Koska ennaltaehkäisy on aina parempi kuin hoito.