Comment trouver le chemin complet du fichier / répertoire d'origine de certains inodes XFS endommagés?
et comment lister rapidement les quelques 10000 inodes (= fichiers / répertoires édités ou déplacés) récemment modifiés parmi des millions de fichiers au total?
- est-il préférable de ne sauvegarder que le système de fichiers website.image endommagé dans un fichier ou l'intégralité du disque dur, y compris son système de fichiers parent, censé ne pas être endommagé même si le disque contient des erreurs? (Bien que "1" ne le fasse pas, cela peut nécessiter de lire toute l'histoire ci-dessous)
Une boucle -o montée sur une image XFS presque complète sur debian est productive depuis des années sur le même lecteur. Un million de fichiers sont lus chaque jour, seuls quelques-uns sont écrits par lots tous les quelques jours.
/dev/cciss/c0d9 1953449048 1950392335 3056714 100% /website '
(smart unvisible due to HP p410 raid controller)
/dev/loop0 1950358937 1937866163 12492775 100% /var/www/website
Lors du déplacement d'un lot de fichiers, le système de fichiers a déjà dit au revoir plusieurs fois. cette fois, il ne pouvait plus être monté et a été tenté avec xfs_repair et xfs_repair -f -L sans succès, en s'arrêtant au moment de l'erreur I / O en scannant les inodes ...
ddrescue / dev / cciss / c0d9 / dev / cciss / c0d6 / ddrescuelog lors d'une première exécution, le journal ddrescue connaissait environ 50 erreurs totalisant environ 2800ko
après plusieurs fois: ddrescue -c1 --direct --retrim --try-again / dev / cciss / c0d9 / dev / cciss / c0d6 / ddrescuelog 500 erreurs et seulement 440 kb sont supposés toujours manquants.
(J'ai aussi oublié d'utiliser le journal une fois, en écrasant à nouveau les 20 premiers Go jusqu'à ce que je les aie arrêtés. Mais pas de problème, je suppose, car il écrira exactement au même endroit sur le lecteur de destination?)
réparant maintenant le système de fichiers sur le nouveau disque, il a supprimé environ 2000 inodes endommagés et 1500 fichiers / répertoires similaires à celui-ci:
bad magic number 0xe5a0 on inode 3270245798
bad version number 0x12 on inode 3270245798
bad inode format in inode 3270245798
bad magic number 0xe5a0 on inode 3270245798, resetting magic number
bad version number 0x12 on inode 3270245798, resetting version number
bad inode format in inode 3270245798
cleared inode 3270245798
**entry "index.html" at block 0 offset 6848 in directory inode 3270245561 references free inode 3270245798
clearing inode number in entry at offset 6848...**
* - aussi: à partir du milliard d'inodes, je suppose que xfs_repair a consommé 30 Go de RAM et s'est écrasé lors de la dernière étape (ce qui est courant et n'a pas d'importance, je suppose)
- reset superblock...
Phase 6 - check inode connectivity...
- resetting contents of realtime bitmap and summary inodes
- traversing filesystem ..*
merci =)
Réponses:
Votre meilleure option de récupération est UFS Explorer.
Évidemment, il est judicieux de s’éloigner de la structure compliquée du système de fichiers et du dispositif de boucle.
Voir: Comment récupérer un système de fichiers XFS avec "Echec de la lecture du superbloc"
la source