Newsgroup: it.comp.os.linux.sys
Titolo: Directory diventate files dopo fsck!

Ciao a tutti,
Mi e` capitato x un cavo ATA malfunzionante uno strano errore sul disco 
root del mio desktop in ufficio, il disco e` stato rimontato read only 
ed io, ingegnuamente, per correggere il problema gli ho forzato un fsck 
(fsck -f /dev/sda1, il filesystem e`/era ext3)...
Beh, dopo aver risposto un po` di volte "Y" a messaggi sempre piu` 
allarmanti la macchina si e` piantata del tutto, con sulla console un 
ATA0.1: revalidation error, al reboot non ripartiva +, ho aperto la 
macchina cambiato il cavo e il disco ora sembra funzionare bene, il 
problema e` che l'FSCK ha compromesso in modo temo definitivo la 
struttura delle directory, usr, sbin, boot sono diventate dei file, ho 
cercato un po con google come si puo` ovviare a questo problema 
(modificare in qualche modo l'inode corrispondente per dirgli che e` una 
directory), o se ci sono programmi che possono ripristinare le cose.... 
ne ho visti due o 3, ma si occupano di recuperare FILE singoli, non 
directory. Ah, lost+found ovviamente e` VUOTA :(
Ovviamente sono consapevole che non recuperero` tutto il disco, ma anche 
solo riuscire a ripristinare le 3 directory in questione in modo da 
vederne il contenuto sarebbe sufficiente...
Ecco uno "spaventoso" ls:
gabry@nevada:~/projects/NMCT_GUICFG$ sudo ls -al  /media/sda1/
total 944
drwxr-xr-x  23 2402 dip    4096 2008-05-13 18:03 .
drwxr-xr-x   5 root root   4096 2007-10-16 01:17 ..
dr-xr-xr-x   4 root root   4096 2008-05-13 17:41 amd
drwxr-xr-x   2 root root   4096 2008-03-25 15:06 bin
-rw-r--r--   1 root root   8640 2007-09-30 02:34 boot
lrwxrwxrwx   1 root root     11 2007-10-08 13:17 cdrom -> media/cdrom
drwxr-xr-x   5 root root   4096 2008-01-16 12:08 dev
drwxr-xr-x 134 root root  12288 2008-05-13 17:41 etc
drwxr-xr-x   2 root root   4096 2007-10-08 13:17 home
drwxr-xr-x   2 root root   4096 2007-04-15 13:48 initrd
lrwxrwxrwx   1 root root     33 2008-01-16 12:16 initrd.img -> 
boot/initrd.img-2.6.22-14-generic
lrwxrwxrwx   1 root root     33 2007-10-08 11:46 initrd.img.old -> 
boot/initrd.img-2.6.20-16-generic
drwxr-xr-x  17 root root  12288 2008-03-25 15:06 lib
drwx------   2 root root  16384 2007-10-08 13:16 lost+found
drwxr-xr-x   8 root root   4096 2008-05-13 02:48 media
?---------   ? ?    ?         ?                ? /media/sda1/usr
drwxr-xr-x   2 root root   4096 2007-04-12 11:11 mnt
dr-xr-xr-x   2 root root   4096 2008-05-12 09:33 net
drwxr-xr-x   2 root root   4096 2007-04-15 13:48 opt
drwxr-xr-x   2 root root   4096 2007-04-12 11:11 proc
drwxr-xr-x   9 root root   4096 2008-05-08 18:11 root
-rw-r--r--   1 root root 831112 2008-05-08 23:05 sbin
drwxr-xr-x   2 root root   4096 2007-04-15 13:48 srv
drwxr-xr-x   2 root root   4096 2007-04-04 12:47 sys
drwxrwxrwt  63 root root  12288 2008-05-13 17:32 tmp
drwxr-xr-x  17 root root   4096 2008-01-16 12:02 var
lrwxrwxrwx   1 root root     30 2008-01-16 12:16 vmlinuz -> 
boot/vmlinuz-2.6.22-14-generic
lrwxrwxrwx   1 root root     30 2007-10-08 11:46 vmlinuz.old -> 
boot/vmlinuz-2.6.20-16-generic

 
]zac[
Niente di spaventoso, solo danni alla struttura del filesystem (i ? sono un
classico).
Converrebbe fare un clone del disco e lavorare sulla copia, poi è probabile
che un fsck, SU UN HARDWARE FINALMENTE FUNZIONANTE, sistemi accettabilmente
le cose.

 le cose.
Ho fatto un DD della partizione su file ed ho lavorato su quella, in 
effetti quando l'fsck ha funzionato a dovere tutti i file sono 
riapparsi, MA, le directory diventate file sono rimaste tali e quindi i 
files erano in cartelle #???????? in lost+found.
Alla fine ho recuperato solo i file miei (pochi perche` in gran parte 
erano nella partizione "home" che ho recuperato al 100%), greppando il 
nome utente su un ls -lR in lost+found, il sistema operativo era 
compromesso ed ho preferito reinstallare scratch.
Morale della storia: mai fare un fsck su un disco che e` stato montato 
read only senza prima riavviare qualche volta la macchina ed essersi 
assicurati che NON sia un problema hardware :)
Bye,
  Gabry

 assicurati che NON sia un problema hardware :)
]zac[
Tanto per ripignoleggiare.
Probabilmente muovendo le directory dal lost+found nel loro posto e con il
nome originale, probabilmente il sistema si sarebbe riavviato (però in
effetti il rischio di file persi qui e la è consistente).
L' errore nell'uso di fsck è quello di insistere dopo che fsck ha segnalato
un elevato numero di errori, sintomo di un danno gravo o piuttosto
probabilmente che fsck invece che correggere peggiorava la situazione
(tipico per es. dell'uso di fsck su una partizione in uso, i cui danni
crescono in maniera esponenziale ad ogni singola azione di fsck).