web-dev-qa-db-fra.com

À quoi sert le dossier lost + found sous Linux et Unix?

Il y a un dossier à la racine des systèmes d'exploitation Linux et Unix appelé /lost+found/

Pourquoi est-ce? Dans quelles circonstances devrais-je interagir avec elle? Comment pourrais-je interagir avec elle?

670
Wesley

Si vous exécutez fsck , la commande de vérification et de réparation du système de fichiers, il peut trouver des fragments de données qui ne sont référencés nulle part dans le système de fichiers. En particulier, fsck peut trouver des données qui ressemblent à un fichier complet mais qui n'ont pas de nom sur le système - un inode sans nom de fichier correspondant. Ces données utilisent toujours de l'espace, mais elles ne sont accessibles par aucun moyen normal.

Si vous dites à fsck de réparer le système de fichiers, cela transformera ces fichiers presque supprimés en fichiers. Le fait est que le fichier avait un nom et un emplacement une fois, mais cette information n'est plus disponible. Donc fsck dépose le fichier dans un répertoire spécifique, appelé lost+found (Après perdu et trouvé propriété).

Les fichiers qui apparaissent dans lost+found Sont généralement des fichiers qui ont déjà été dissociés (c'est-à-dire que leur nom a été effacé) mais toujours ouverts par un processus (donc les données n'ont pas encore été effacées) lorsque le système s'est arrêté soudainement (panique du noyau ou panne électrique). Si c'est tout ce qui s'est passé, ces fichiers ont été supprimés de toute façon, vous n'avez pas besoin de vous en soucier.

Les fichiers peuvent également apparaître dans lost+found Car le système de fichiers était dans un état incohérent en raison d'un bogue logiciel ou matériel. Si c'est le cas, c'est un moyen pour vous de retrouver les fichiers qui ont été perdus mais que la réparation du système a réussi à récupérer. Les fichiers peuvent ou non contenir des données utiles, et même s'ils le font, ils peuvent être incomplets ou obsolètes; tout dépend de la gravité des dommages du système de fichiers.

Sur de nombreux systèmes de fichiers, le répertoire lost+found Est un peu spécial car il préalloue un peu d'espace pour que fsck puisse y déposer des fichiers. (L'espace n'est pas pour les données du fichier, que fsck laisse en place; c'est pour les entrées de répertoire que fsck doit composer.) Si vous supprimez accidentellement lost+found , ne le recréez pas avec mkdir, utilisez mklost+found si disponible.

Le lost+found directory (not Lost + Found) est une construction utilisée par fsck lorsqu'il y a des dommages au système de fichiers (pas au périphérique matériel, mais au fs). Les fichiers qui seraient normalement perdus en raison d'une corruption de répertoire seraient liés dans le système de fichiers lost+found répertoire par numéro d'inode. Certains d'entre eux peuvent être des répertoires perdus ou des fichiers perdus ou même des appareils perdus. Chaque système de fichiers doit avoir son propre lost+found répertoire, mais vous regardez peut-être un système avec un seul système de fichiers. En général, vous devez espérer que le répertoire est vide; mais en cas de corruption, sachez que dans de nombreuses conditions, les fichiers peuvent être récupérés après que fsck les ait placés ici.

65
Arcege

Dans "Hiérarchie du système de fichiers Linux", section / lost + found " :

Comme cela a été expliqué précédemment lors de la présentation du FSSTND, Linux doit toujours subir un arrêt correct. Parfois, votre système peut se bloquer ou une panne de courant peut entraîner l'arrêt de la machine. Dans les deux cas, au prochain démarrage, une longue vérification du système de fichiers à l'aide de fsck sera effectuée. Fsck va parcourir le système et essayer de récupérer tous les fichiers corrompus qu'il trouve. Le résultat de cette opération de récupération sera placé dans ce répertoire. Les fichiers récupérés ne sont probablement pas complets ou n'ont pas beaucoup de sens, mais il y a toujours une chance que quelque chose de valable soit récupéré. Chaque partition a son propre répertoire lost + found. Si vous y trouvez des fichiers, essayez de les ramener à leur emplacement d'origine. Si vous trouvez quelque chose comme un lien symbolique brisé vers "fichier", vous devez réinstaller le ou les fichiers à partir du RPM correspondant, car votre système de fichiers a été si gravement endommagé que les fichiers ont été mutilés au-delà de la reconnaissance. Voici un exemple de répertoire/lost + found. Comme vous pouvez le voir, la grande majorité des fichiers contenus ici sont en fait des sockets. Quant aux autres fichiers, ils se sont avérés être des fichiers système et des fichiers personnels endommagés. Ces fichiers n'ont pas pu être récupérés.

38
bhupal