Reconnecter un fichier alloué non référencé
par
popularité : 3%
La commande ff :
la commande fsck, permet de parfois de récupérer des
inodes perdus ... La commande fsck met les inodes dans le répertoire
« lost+found » du système de fichier ou
se trouvais le fichier avant sa disparition.
Reconnecter un fichier alloué non référencé Si la commande fsck découvre un inode alloué mais non référencé ou non lié à un répertoire, la commande affiche un message qui vous demande si vous désirez reconnecter l’inode. ** Phase 3 - Check Connectivity UNREF FILE I=159 OWNER=jerome MODE=100444 SIZE=594 MTIME=Jan 14 19:10 2004 RECONNECT? y Le fichier est enregistré dans le répertoire lost+found si vous répondez yes. Le nom du fichier est son numéro d’inode.
Le probème est de remettre le fichier perdu dans sa
situation d’origine.
-
Dans le bon répertoire
-
Les droits
-
Le propriétaire et le groupe d’origine
Pour nous aidez nous avons la commande /usr/sbin/ff.
/usr/sbin/ff -F ufs /dev/dsk/c#t#d#s# > /rép/rép/fichier
Il faud effectuer cette tache sur tous les sytèmes de
fichier. Cela permet d’obtenir un fichier par sytème de
fichier.
Exemple :
/usr/sbin/ff -F ufs /dev/dsk/c0t0d0s0
/dev/dsk/c0t0d0s0: 3 /lost+found/. 15844 /export/. 5 /var/. 21 /usr/. 44 /boot/. 48 /kernel/. 59 /platform/. 2069 /bin 2071 /dev/. 2073 /devices/. 2075 /etc/. 2184 /lib 2185 /mnt/. 2186 /opt/. 2187 /proc/. 2188 /sbin/. 2191 /tmp/. 22283 /net/. 15845 /home/. 22284 /xfn/. 22317 /TT_DB/. ...
Maintenant, il ne vous reste plus car
faire un script qui va effecturer un ls -ld pour chaque fichier.
Exemple :
while read inode fichier
do
echo $inode ls -ld $fichier
done < /rép/rép/fichier > /rep/rep/FS_final
cat /rép/rép/FS_final
3 drwx------ 2 root root 8192 nov 7 2003 /lost+found/.
15844 drwxr-xr-x 5 root sys 512 mars 1 18:56 /export/.
5 drwxr-xr-x 37 root sys 1024 mai 14 14:49 /var/.
21 drwxr-xr-x 36 root sys 1024 janv 15 00:17 /usr/.
44 drwxr-xr-x 4 root sys 512 nov 7 2003 /boot/.
48 drwxr-xr-x 12 root sys 512 févr 3 22:27 /kernel/.
59 drwxr-xr-x 4 root sys 512 nov 7 2003 /platform/.
2069 lrwxrwxrwx 1 root root 9 nov 7 2003 /bin -> ./usr/bin
2071 drwxr-xr-x 14 root sys 3584 mai 21 11:07 /dev/.
Si vous touvez un #numero_inode dans un répertoire lost+found,
il vous restera plus car effecturé :
grep numero_inode
/rép/rép/FS_final
Voila