IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Sistemes de fitxers Unix

Kernel de Unix

LinuxKernelStorage.png
.

Sistema de protecció

Consulteu l'article Permisos_Unix

inode

En informàtica i concretament en sistemes Unix-Like un inode és una estructura de dades que emmagatzema informació bàsica (també coneguda com a metadades) d'un fitxer o qualsevol altre objecte d'un sistema de fitxers.

L'inode és un component essencial del sistema de fitxers lògic. Cal tenir clara la diferència entre sistema de fitxers lògic, que és el nivell d'abstracció que ens ofereix el sistema operatiu i que ens permet treballar amb els sistemes de fitxers amb independència de les seves característiques físiques i de maquinari, del sistema de fitxers físic.

El sistema de fitxers lògic és un component més del que es coneix com a màquina virtual del sistema operatiu.

Recursos:

Característiques i dades dels inodes

Quan es crea un sistema de fitxers es generen també unes estructures de dades per mantenir la informació dels fitxers del sistema. A cada fitxer del sistema li correspon un inode i cada inode s'identifica per un número d'inode (conegut com a i-number o ino). El número d'inode d'un fitxer es pot conèixer amb la comanda:

$ ls -i 
6242503 a       6242498 d  6242502 linkdura

La informació que conté un inode esta determinada per l'estàndard POSIX i és:

  • Mida del fitxer
  • Propietari (userid o uid) i grup (groupid o gid)
  • Permisos d'accés al fitxer.
  • Tipus de fitxers (fitxer regular, carpeta, dispositiu, socket, enllaç)
  • Timestamps
  • Un comptador de quants enllaços hi ha a aquest fitxer. Vegeu Hard Links
  • Punters al blocs de disc amb el contingut del fitxer.

IMPORTANT: L'inode no conté el nom del fitxer. El nom del fitxer el conté el directori al qual es troba el fitxer

Podeu consultar aquesta informació amb les comandes ls i stat.

$ ls -l

o

$ stat fitxer

Hi ha un nom limitat d'inodes que indica el nombre màxim de fitxer (aquest nombre es diferent en cada sistema de fitxers). Típicament l'espai d'inodes és un 1% del disc dur. Els inodes es guarden en una estructura de dades taula que permet accedir directament a un inode a partir del seu número de inode. A partir del número d'inode el sistema operatiu pot accedir a la metainformació de l'inode i al contingut de l'inode (a través d'uns punters que emmagatzema l'inode)

No tots els sistemes de fitxers proporcionen inodes (per exemple ReiserFS no ho fa) però proporcionen informació equivalent per a la comanda stat (que utilitza la crida de sistema stat)

Implicacions importants:

  • Els inodes no contenen els noms dels fitxers, només els seus continguts (els noms dels fitxers els contenen les carpetes)
  • Els directoris de Unix són llistes on cada element de la llista conté el nom del fitxer i el seu número d'inode.
  • El kernel de unix ha de buscar primer el directori del fitxer i a partir d'aquí obtenir de la llista el seu inode per tal d'accedir a l'informació del fitxer (si es troba el nom del fitxer a la llista)

La estructura de dades en C (struct) de Linux s'anomena struct inode.

ext2

Ext2-inode.gif

Ext2 és un sistema de fitxers amb una cache en memòria i s'escriu al disc de forma asíncrona. El problema que té és que una apagada no controlada (reinici del sistema incorrecta, caiguda de tensió, etc.) pot provocar la pèrdua d'informació. El kernel marca el sistema de fitxers com dirty si hi ha dades pendents de gravar o com a clean si no hi ha dades pendents.

Per aquesta raó s'executa un fsck cada cop que s'inicia la màquina. Hi ha dos casos de dirty:

  • La cache tenia dades pendents de escriure
  • La cache estava escrivint

En el primer cas simplement es perden les dades. En el segon cas es pot arreglar amb fsck

Un sistema de fitxers ext2 (i per extensió ext3) té 3 zones:

  • Superbloc: És un sol bloc que conté informació de la resta de zones de disc
  • Inodes: vegeu inode
  • Blocs de dades. Format normalment per blocs de 4k (es pot modificar al formatar el disc)

Al crear un fitxer (per exemple amb la comanda touch) el sistema escull un inode lliure i es guarda totes les metadades del fitxer menys el seu contingut i el seu nom a l'inode. L'inode conté una llista de blocs que no tenen per que ser consecutius on es guarden les dades del fitxer.

Per accedir a la informació d'un fitxer concret, per exemple:

  • /home/sergi/prova

es segueixen les següents passes. S'accedeix al directori arrel que té un número fix d'inode (2). Com que és un directori conté una llista dels inodes dels fitxers (recordeu que les carpetes i de fet tot en Linux és un fitxer) que conté. S'obté l'inode de /home i així successivament fins a obtenir el inode del fitxer prova.

A diferència de FAT no hi ha límit en la mida del fitxer per limitacions en la taula FAT. Quan s'acaben els blocs d'un inode, l'últim bloc conté un punter a un altre bloc amb els continguts o altres punter a blocs de dades (vegeu la gràfica de la dreta).

Understandlk 1801.jpg

Al crear un nou sistema de fitxers ext2, el disc s'organitza segons la imatge de la dreta en grups de blocs. El kernel del SO intenta que tots els fitxers tinguin els seus blocs a un mateix grup de blocs.

Cada bloc de grup conté:

  • Una còpia del superbloc del sistema de fitxers
  • Una còpia de del grups de descriptors de grup de blocs
  • Un mapa de bits indicant quins blocs estan lliure
  • Una mapa de bits indicant quins inodes estan lliures
  • Un taula d'inodes (permet accedir als inodes segons el seu número d'inode)
  • Blocs de dades

Cop podeu veure el superbloc té diferents còpies en tot el sistema de fitxers. El kernel només utilitza el superbloc del primer grup de blocs però la resta es poden utilitzar per restaurar un sistema inconsistent. Vegeu l'apartat Còpia de seguretat i restauració de sistemes de fitxers per conèixer els detalls d'aquesta operació.

Com podem saber quants grups de blocs hi ha i com s'organitza el disc? Això depèn de la mida del sistema de fitxers i d'altres paràmetres. Els podem consultar amb la comanda tune2fs i fsck

La mida típica del bloc és de 4Kbytes (és el valor màxim en CPUs de 32 bits).

Recursos:

Com calcular blocs, còpies de superblocs, nº de grups de bloc, etc.

Exemple de bloc de 8KB i disc dur de 16GB

El superbloc és una zona de dades crítica i per aquesta raó sent mantenen còpies de seguretat (superblock backups) en diferents posicions del sistema de fitxers. En les primeres versions de ext2, es guardava una còpia del superbloc al primer bloc de cada grup de blocs. Actualment, tenint en compte la mida dels discs durs, es considera malgastar massa espai mantenir una còpia a cada grup de blocs i només es mantenen còpies als grups de blocs 0, 1 i als que són potències de 3, 5 i 7 (opció sparse blocks) [1]

Fent uns quants càlculs:

  • 1KB --> 1024
  • 8KB--> 8*1024=8192
  • 1GB--> 1024*1024*1024=1073741824
  • 16GB --> 1073741824*16=17179869184

Nº de blocs= 17179869184/8192= 2097152

Cada grup de blocs pot tenir com a màxim:

8×b blocs on b és la mida del bloc en bytes --> 64KB.

Per tant la mida en blocs del grup és 64*1024=65536.

El nombre total de grups de blocs és: s/(8×b) on s és la mida de la partició en blocs (2097152) --> 2097152/(8*8*1024)=32

Les copies es guarden per tant als blocs:

Potències de 3: 3=3 3*3=9 3*3*3=27 3*3*3*3=81 3*3*3*3*3=243

Potències de 5: 5=5 5*5=25 5*5*5=125 5*5*5*5=625 ...

Potències de 7: 7=7 7*7=49 7*7*7=343 ...

La sèrie és : 1, 3, 5, 7, 9, 25, 27, 49, 81... però només tenim 32 grups de blocs i per tant hem d'aturar-nos a 27.

Per tant els blocs on hi ha còpia del superbloc són:

  • 65536*1=65536 -> Primer bloc del grup de blocs 1
  • 65536*3=196608 -> Primer bloc del grup de blocs 3
  • 65536*5=327680 -> Primer bloc del grup de blocs 5
  • 65536*7=458752 -> Primer bloc del grup de blocs 7
  • 65536*9=589824 -> Primer bloc del grup de blocs 9
  • 65536*25=1638400 -> Primer bloc del grup de blocs 25
  • 65536*27=1769472 -> Primer bloc del grup de blocs 27

Exemple de bloc de 4KB i disc dur de 16GB

  • 1KB --> 1024
  • 4KB--> 4*1024=4096
  • 1GB--> 1024*1024*1024=1073741824
  • 16GB --> 1073741824*16=17179869184

Nº de blocs= 17179869184/4096= 4194304

Cada grup de blocs pot tenir com a màxim:

8×b blocs on b és la mida del bloc en bytes --> 32KB.

Per tant la mida en blocs del grup és 32*1024=32768.

El nombre total de grups de blocs és: s/(8×b) on s és la mida de la partició en blocs (2097152) --> 2097152/(4*8*1024)=128

$ sudo mkfs.ext3 /dev/sdb1 
 mke2fs 1.40.2 (12-Jul-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
2097152 inodes, 4192957 blocks
209647 blocks (5.00%) reserved for the super user
 First data block=0
Maximum filesystem blocks=0
'128 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,  
	4096000

Podeu trobar un full de càlcul amb els exemples de càlcul de nº deblocs, nº de superblocs i còpies de superblocs a:

http://acacha.dyndns.org/~sergi/SistemaFitxersExt2.ods

ext3

És el sistema més utilitzat actualment en Linux (tot i que no és el més ràpid). En gran part perquè es possible passar un sistema ext2 a ext3 sense perdre les dades i perquè no consumeix tanta CPU com altres sistemes.

Ext3 és equivalent a un sistema ext2 amb les següents millores:

  • Journaling: ext3 implementa un mecanisme anomenat journalist. Ext3 és compatible amb ext2 però soluciona el problema de les inconsistències de ext2 ja que si un es capaç de saber quan una situació de dirty a disk es d'un tipus o d'un altre poden evitar tenir que chequejar el disk sempre. És un sistema semblant al fallback de les bases de dades.
  • Creixement del sistema de fitxers online
  • L'estructura de dades és Htree (versió especialitzada dels arbres B)

Tant ext2 com ext3 utilitzant les eines de e2fsprogs

Recursos:

Journaling

El journaling és un mecanisme pel qual un sistema informàtic pot implementar transaccions. També es conegut com a registre per diari. La base del journaling es mantenir un registre (log) o s'emmagatzema la informació necessària per a restablir les dades afectades per una transacció. El journal es pot utilitzar per restablir el sistema es cas d'un error del sistema

El seu ús més comú és en base de dades però actualment també s'utilitza en els sistemes de fitxers per tal d'evitar la corrupció de les estructures de dades dels sistemes d'arxius.

L'objectiu del journal es evitar tenir que executar un fsck cada cop que la màquina es penja o no s'apaga correctament.

Cal indicar però que el journaling no evita el 100% dels casos de corrupció de dades i es necessari executar de tant en tant un fsck.

Recursos:

Formatat

El procés de formatar un dispositiu d'emmagatzemament és el que prepara el dispositiu per tal d'emmagatzemar dades.

Alguns dispositius d'emmagatzemament, com els discs durs es poden particionar. Particionar és la operació de dividir el dispositiu en seccions (parts) on cada part és independent de la resta (p. ex. cadascuna pot tenir el seu propi sistema de fitxers).

S'han d'executar una sèrie de passos per dur a terme el formatat d'un dispositiu d'emmagatzemament. Podeu consultar un exemple pas a pas complet a l'article:

Formatat a nivell físic

Hi han dos tipus de formatats a nivell físic:

  • Formatat a baix nivell: Aquest formatat està més relacionat amb la organització física del dispositiu i és un formatat molt proper al maquinari. Per exemple, en un disc dur, consisteix en traçar amb senyals magnètiques les pistes i els sectors del disc. Consulteu l'apartat " principis de funcionament" de l'article sobre discs durs per tal d'obtenir més detalls. Els dispositius d'emmagatzemament com discs durs o memòries flash ja venen formatats a baix nivell i per tant, rarament com a usuaris haurem de formatar uns dispositiu a baix nivell.
  • Formatat a alt nivell: Aquest formatat és més proper al sistema lògic i al sistema operatiu (programari). S'encarrega de crear un sistema de fitxers buit i instal·lar un gestor d'arrancada. També se l'anomena "formatació ràpida" (quick format). L'ordre que ens permet crear les particions d'un disc és fdisk i altres alternatives gràfiques com cfdisk, gparted o l'eina palimpsest.

Formatat a nivell lògic

El formatat a nivell lògic crea el sistema de fitxers amb el que treballarà el sistema operatiu. Hi han diferents sistemes de fitxers i diferents comandes per crear aquests sistemes de fitxers.

mkfs és un front-end per a crear diferents tipus de sistemes de fitxers.

Muntar sistemes de fitxers

Comanda mount

Consulteu mount

supermount

TODO

submount

TODO

Comanda vol_id

Des de la versió Edgy de Ubuntu que s'utilitzen uuid. Per obtenir la UID d'un dispositiu cal executar:

$ vol_id -u /dev/sda4

La comanda vol_id la proporciona udev, tal i com podeu veure si executeu:

$ which vol_id
/sbin/vol_id
$ dpkg -S /sbin/vol_id 
udev: /sbin/vol_id

Més informació a:

Automount

TODO

Fitxers

/etc/mtab

mtab té les unitats montades actualment.

$ cat /etc/mtab
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /lib/modules/2.6.22-14-generic/volatile tmpfs rw,mode=0755 0 0
tmpfs /lib/modules/2.6.22-14-generic/volatile tmpfs rw,mode=0755 0 0
varrun /var/run tmpfs rw,noexec,nosuid,nodev,mode=0755 0 0
varlock /var/lock tmpfs rw,noexec,nosuid,nodev,mode=1777 0 0
udev /dev tmpfs rw,mode=0755 0 0
devshm /dev/shm tmpfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
tmpfs /tmp tmpfs rw,nosuid,nodev 0 0

/etc/fstab

Consulteu /etc/fstab

TroubleShooting

Device /usr is busy

Tot i estar a nivell d'execució 1 ens podem trobar que ens diqui que la unitat esta "busy" quan intentem desmuntarla. Es pot utilitzar la comanda fuser per veure quin processos utilitzen certs fitxers:

  fuser -avm /usr

Ordres

fdisk

Consulteu fdisk

fdisk i el MBR

Consulteu l'apartat:

Discs_durs#Master_Boot_Record

cfdisk

Consulteu cfdisk

e2fsprogs

Consulteu e2fsprogs

e2fsck

Consulteu e2fsck.

mke2fs

Consulteu mke2fs

resize2fs

Consulteu resize2fs.

tune2fs

Permet modificar alguns paràmetres del sistema de fitxers. Exemples:

Desactivar les comprovacions de disk

Atenció: No és gens recomanable!
$ sudo tune2fs -c0 /dev/sda1

Modificar cada quants muntatges del sistema de fitxers s'executarà un fsck:

Per exemple si ho volem cada 50 cops

$ sudo tune2fs -c 50

Forçar un fsck a la pròxim boot del sistema:

Podem utilitzar -C per establir que el número de cops que s'ha muntat el sistema és superior a el nombre màxim de muntatges sense fsck:

$ sudo tune2fs -C 51

Establir un fsck per temps:

$ sudo tune2fs -i  d|m|w

Amb l'opció -T es pot indicar la data de l'últim test i forçar així un test al tornar a iniciar la màquina.

Establir el nom del volum:

$ sudo tune2fs -L NOMVOLUM

Consulteu també e2label.

Establir el UUID:

$ sudo tune2fs -U UUID

Consultar els paràmetres:

$ sudo tune2fs -l /dev/sda1
tune2fs 1.40.2 (12-Jul-2007)
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          722bdfa0-5e3e-4e2d-b1cd-c90216753f6c
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal resize_inode dir_index filetype sparse_super large_file
Filesystem flags:         signed directory hash 
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              180864
Block count:              361454
Reserved block count:     18072
Free blocks:              347030
Free inodes:              180853
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      88
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         15072
Inode blocks per group:   471
Filesystem created:       Sat May 10 12:28:55 2008
Last mount time:          n/a
Last write time:          Sat May 10 12:29:01 2008
Mount count:              0
Maximum mount count:      34
Last checked:             Sat May 10 12:28:55 2008
Check interval:           15552000 (6 months)
Next check after:         Thu Nov  6 12:28:55 2008
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               128
Journal inode:            8
Default directory hash:   tea
Directory Hash Seed:      1ce5cd68-fc9f-4579-bf23-1a9817db3696
Journal backup:           inode blocks

Canviar el tant per cent de blocs reservats a root:

En sistemes amb discs durs mol grans es pot reduir el valor per defecte reservat (5%) o fins i tot en sistemes de fitxers amb només fitxers d'usuari ens pot interessar un 0%

$ sudo tune2fs -m 2 /dev/loop1

Recursos:

dumpe2fs

Permet fer un volcatge (una copia) del sistema de fitxers:

$ sudo dumpe2fs /dev/sda1 > sda1dump

Val la pena guardar aquest fitxer en un altre ordinador.

debugfs

Consulteu debugfs

File System Check (fsck)

http://en.wikipedia.org/wiki/Fsck

mkfs

Construeix un sistema de fitxers Linux. mkfs és un front-end per a crear diferents tipus de sistemes de fitxers. Si executeu:

$ ls -la /sbin/mkfs* 
-rwxr-xr-x 1 root root   4880 2007-10-03 04:48 /sbin/mkfs
-rwxr-xr-x 1 root root   8412 2007-10-03 04:48 /sbin/mkfs.bfs
-rwxr-xr-x 1 root root  15216 2007-10-03 04:48 /sbin/mkfs.cramfs
-rwxr-xr-x 3 root root  43876 2007-09-06 18:32 /sbin/mkfs.ext2
-rwxr-xr-x 3 root root  43876 2007-09-06 18:32 /sbin/mkfs.ext3
-rwxr-xr-x 2 root root  55140 2007-03-05 04:24 /sbin/mkfs.jfs
-rwxr-xr-x 1 root root  14720 2007-10-03 04:48 /sbin/mkfs.minix
 lrwxrwxrwx 1 root root      7 2007-10-15 23:20 /sbin/mkfs.msdos -> mkdosfs
lrwxrwxrwx 1 root root     16 2007-10-15 23:33 /sbin/mkfs.ntfs -> /usr/sbin/mkntfs
-rwxr-xr-x 2 root root 146460 2007-07-26 10:57 /sbin/mkfs.reiserfs
lrwxrwxrwx 1 root root      7 2007-10-15 23:20 /sbin/mkfs.vfat -> mkdosfs
-rwxr-xr-x 1 root root 340508 2007-06-19 16:55 /sbin/mkfs.xfs

Veureu tots els sistemes de fitxers que es capaç de crear mkfs.

Sistema de fitxers ext2 i ext3. mkfs.ext2 i mkfs.ext3

Consulteu mke2fs.

Sistema de fitxers FAT. mkfs.vfat

Consulteu mks.vfat

Sistema de fitxers swap. mkswap

Consulteu mkswap.

Sistema de fitxers minix. mkfs.minix

Permet crear sistemes de fitxers minix.

TODO

Sistema de fitxers mkfs.reiserfs

Permet crear sistemes de fitxers reiserfs

TODO

sync

Força la sincronització entre cache i disc (flush).

$ sync

swapon

Activa la partició swap:

$ sudo swapon /dev/sdb6

Per veure si la swap esta activada i quin ús s'està fent:

$ swapon -s

Com podem saber si tenim la swap funcionant:

$ free
           total       used       free     shared    buffers     cached
Mem:        514964     497800      17164          0       4544      53428
-/+ buffers/cache:     439828      75136
Swap:       0            0           0

o

$ cat /proc/swaps

Si no esta funcionant l'activem amb swapon

La comanda mkswap crea un sistema de fitxers swap.

$ sudo mkswap /dev/hda5

Formata una partició per a swap.

e2label

$ sudo e2label /dev/hda3 /work

Recursos:

Comanda dd

Consulteu dd

TroubleShooting

No es munta la partició de swap a l'inici

Cal mirar els fitxer /etc/fstab. Si s'utilitza UUID potser aquest s'ha modificat per haver tornar a crear el sistema de fitxers swap.

Còpia de seguretat i restauració de sistemes de fitxers

ext2 i ext3

Al crear un sistema de fitxers per a una partició executant:

$ sudo mkfs.ext3 /dev/sda1
mke2fs 1.40.2 (12-Jul-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
180864 inodes, 361454 blocks
18072 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=373293056
12 block groups
32768 blocks per group, 32768 fragments per group
15072 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912   

Writing inode tables: done                            
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done  

This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override. 

El superbloc és el bloc que emmagatzema quina és l'estructura del sistema de fitxers. El sistema només utilitza el superbloc del primer grups de blocs (group block 0) però es poden utilitzar la resta de còpies per restaurar un sistema de fitxers inconsistent.

Per recuperar un sistema inconsistent s'utilitza fsck (e2fsck). Per defecte s'utilitza el bloc 0 però es poden utilitzar les còpies amb:

$ sudo fsck -b 32768 /dev/sda1

Per poder fer això cal saber on estan les còpies i per això val la pena apuntar-les. De totes maneres es pot seguir el procediment de

http://edseek.com/archives/2004/02/25/ext3-filesystem-bad-superblock-recovery/

Per saber on estan aquestes còpies del superbloc. També s'explica quin és el procediment per intentar arreglar el sistema de fitxers. També es poden consultar els superblocs amb:

NOTA: Molt important l'opció -n!!! sinó es posa es crea un nou sistema de fitxers en la partició, esborrant l'existent. 
$ sudo mke2fs -n /dev/sda1
mke2fs 1.40.2 (12-Jul-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
180864 inodes, 361454 blocks
18072 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=373293056
12 block groups
32768 blocks per group, 32768 fragments per group
15072 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912

També podem utilitzar:

$ dumpe2fs /dev/hda3 | grep -i superblock

Fer una còpia exacte (bit a bit) d'una partició o disc

Si es té prou espai es pot aconseguir una còpia d'una partició bit a bit amb la comanda dd.

$ dd if=/dev/sda5 of=/dev/hda7

Fragmentació/Defragmentació

ext2 i ext3

A ext2 no hi ha una eina de defragmentació. Això no vol dir que no hi hagi fragmentació, però si que és molt menor que altres sistemes com FAT o NTFS. Això es així per què el sistema de fitxers ext2 redueix la fragmentació perquè el kernel intenta que els blocs de dades d'un fitxer es mantinguin a un mateix grups de blocs (a prop en posició física de disc)

shake

Recover

Instal·lació:

$ sudo apt-get install recover

No és una eina que funcioni gaire bé

Recuperar fitxers de text

$ sudo grep -a -B5 -A100 "Dear Senator Jones" /dev/sda4 > recover.txt

Testdisk

Instal·lació:

$ sudo apt-get install testdisk

Comandes:

$ dpkg -L testdisk | grep bin
/usr/sbin
/usr/sbin/testdisk
/usr/sbin/photorec

L'eina de clonació de màquines per xarxa, fog, disposa de tasques basades en testdisk.

testdisk

TestDisk fa un test de les particions i dels sectors de boot del disc. Permet treballar amb múltiples sistemes de fitxers i és una eina útil per per a recuperar discs.

photorec

Permet recuperar fotografies d'un disk dur on s'ha espatllat el sistema de fitxers.

$ sudo apt-get install testdisk
$ sudo photorec /path/A/dispositiu_particio

Per exemple:

$ sudo photorec /dev/sdb1

I s'inicia un assistent. Podeu consultar un exemple a:

http://www.cgsecurity.org/wiki/PhotoRec_Step_By_Step

Recursos

Vegeu també