Avez-vous effacé accidentellement des fichiers importants sur votre système Linux et cherchez-vous un moyen de les récupérer ? Ne cherchez pas plus loin, car ce guide vous montrera comment utiliser debugfs pour récupérer des fichiers supprimés sous Linux. L'outil debugfs permet aux utilisateurs d'accéder aux informations d'inode et aux structures de données d'un système de fichiers, ce qui en fait un outil puissant pour la récupération de fichiers.
Partie 1. Qu'est-ce que les débogages ?
Debugfs est un puissant utilitaire de débogage du système d'exploitation Linux qui permet d'accéder aux structures de données internes et aux informations d'inode d'un système de fichiers. Les concepteurs de noyaux l'utilisent souvent pour effectuer des tâches telles que la suppression de fichiers et la récupération de données.

Debugfs possède certaines fonctionnalités qui en font un outil utile pour gérer les systèmes de fichiers. Il constitue une interface simple, basée sur la mémoire vive, pour accéder aux informations du système de fichiers et permet aux utilisateurs de manipuler les structures de données des inodes et d'effectuer la suppression des fichiers. Debugfs propose également de nombreuses autres fonctions, telles que l'affichage des statistiques du système de fichiers, etc.
Partie 2. Comment utiliser les débogages
Dans l'environnement du noyau Linux, debugfs est un système de fichiers largement adopté pour les pilotes et les sous-systèmes. Contrairement aux autres systèmes de fichiers, le contenu des fichiers debugfs est généré par le noyau et est spécifique à chaque pilote ou sous-système. Pour le développement de nouveaux pilotes, debugfs est préféré aux déclarations printk car il offre un processus plus rationnel d'activation/désactivation et une interface standardisée.
Conditions préalables
Supposons que le noyau est compilé avec les options de configuration suivantes :
CONFIG_DEBUG_FS=y
Montage des débogages
Le processus est similaire à d'autres systèmes de fichiers virtuels utilisant la commande mount. Pour monter le système de fichiers debugfs :
Étape 1 : Créez un point de montage. La valeur par défaut est /sys/kernel/debug/ ; il est peut-être déjà présent.
# mkdir /sys/kernel/debug
Étape 2 : Montez debugfs à l'aide de la commande mount :
# mount -t debugfs aucun /sys/kernel/debug
Étape 3 : Utilisez la commande cat pour afficher le contenu du système de fichiers :
# cat /sys/kernel/debug/gpio
GPIOs 32-63, A :
[ds5] GPIOA6 : [gpio] set
[ds1] GPIOA9 : [gpio] clear
[sda] GPIOA23 : [gpio] set
[scl] GPIOA24 : [ gpio] régler
[Bouton 3] GPIOA30 : [gpio] régler
[Bouton 4] GPIOA31 : [gpio] régler
GPIO 64-95, B :
GPIO 96-127, C :
[udc_vbus] GPIOC5 : [gpio] défini
[nand_rdy] GPIOC13 : [gpio] défini
[nand_enable] GPIOC14 : [gpio] défini
Ajout de la prise en charge des débogages à un pilote
L'API debugfs se trouve dans les fichiers source du noyau, fs/debugfs/inode.c et fs/debugfs/file.c. Pour créer des fichiers debugfs pour un pilote ou un sous-système, suivez ces trois étapes :
- Déterminer la structure du répertoire
- Développer des fonctions d'opération de fichier pour chaque fichier
- Enregistrez les fichiers avec le système de fichiers debugfs
Partie 3. Comment récupérer des fichiers supprimés à l'aide de debugfs sous Linux ?
Le processus est simple.
Étape 1 : Créez un fichier texte (data.txt) et saisissez :
echo 'Ceci est un test' > data.txt
Étape 2 : Pour afficher le numéro d'inode de data.txt, saisissez la commande :
ls -li data.txt
Étape 3 : Il fournit une sortie. Voici un échantillon :
7536648 -rw-r--r-- 1 racine racine 15 mai 3 12:40 data.txt
Notez le numéro d'inode.
Étape 4 : Supposons que le système de fichiers se trouve sur /dev/sda2, entrez la commande
# debugfs -w /dev/sda2
OU
Si le système de fichiers est /dev/mapper/wks01-root, saisissez la commande :
# debugfs -w /dev/mapper/wks01-root
Au bout d'un moment, vous recevrez l'invite suivante :
debugfs 1.41.12 (17 mai 2010)
debugfs :
Tapez la commande ci-dessous pour obtenir un bloc de données
débogages : logdump -i <7536648>
Vous recevrez à nouveau une sortie. Notez les blocs. Par exemple (0+1) : ligne 7559168
Étape 5. Utilisez la commande suivante pour supprimer le fichier data.txt
rm data.txt
ls data.txt
Vous recevrez une sortie telle que sous
ls : impossible d'accéder à data.txt : aucun fichier ou répertoire de ce type.
Étape 6 : Pour récupérer le fichier, saisissez la commande suivante :
# dd if=/dev/mapper/wks01-root of=data.txt bs=4096 count=1 skip=7559168
Étape 7 : Confirmez que les données sont récupérées.
chat data.txt
Enfin, vous recevrez une sortie telle que :
C'est un test
Partie 4. La meilleure alternative à debugfs pour récupérer des fichiers supprimés à partir de Linux
Debugfs est un outil puissant dans l'environnement Linux ; toutefois, il présente certaines limites qu'il convient de prendre en compte avant de décider de l'utiliser pour une tâche donnée. Premièrement, son objectif principal est le débogage et il peut ne pas convenir à tous les cas d'utilisation.
De plus, la fonctionnalité de debugfs peut être complexe et difficile à comprendre pour les utilisateurs ayant des connaissances techniques limitées. Néanmoins, vous pouvez essayer l'outil de récupération Linux Wondesrshare Recoverit car il est facile à utiliser et possède plusieurs fonctionnalités de récupération de données, telles que :

Wondershare Recoverit - Votre logiciel de récupération Linux sûr et fiable
5 481 435 personnes l'ont téléchargé.
Récupère les documents perdus ou supprimés, les photos, les vidéos, la musique, les courriels et plus de 1000 types de fichiers de manière efficace, sûre et complète.
Compatible avec toutes les distributions Linux courantes, y compris Ubuntu, Linux Mint, Debian, Fedora, Solus, Opensuse, Manjaro, etc.
Aide dans plus de 500 scénarios de perte de données, tels que la suppression, le formatage du disque, la panne de courant, l'attaque de virus, la perte de partition et bien d'autres.
Fonctionne via une connexion à distance. Vous pouvez récupérer des données même lorsque votre ordinateur Linux est en panne.
Pour utiliser cette alternative debugfs pour récupérer des fichiers supprimés, suivez ces étapes :
Pour Windows Vista/7/8/10/11
Pour macOS X 10.10 - macOS 13
Étape 1 : Lancez l'outil de récupération de données Linux après l'installation et accédez à l' option NAS et Linux sur le côté gauche de l'interface principale. À partir de là, cliquez sur le bouton Récupération Linux pour commencer le processus de récupération des données.

Étape 2 : Une nouvelle fenêtre apparaîtra, vous demandant de saisir les informations nécessaires pour la connexion à distance. Après avoir complété les informations, lancez la connexion en cliquant sur le bouton Connecter.

Étape 3 : Une fois la connexion établie, Recoverit lancera une analyse automatisée pour rechercher tous les fichiers manquants sur le périphérique Linux. Une fois le fichier souhaité localisé, l'analyse peut être arrêtée et le fichier restauré.

Étape 4 : Une fois l'analyse terminée, prévisualisez les fichiers pour vous assurer qu'ils sont ceux que vous souhaitez récupérer. Ensuite, appuyez sur le bouton Récupérer pour enregistrer les fichiers.

Le logiciel alternatif debugfs vous demandera de sélectionner le dossier de destination pour enregistrer vos fichiers récupérés. Lancez le processus de récupération en cliquant sur le bouton Récupérer . Pour les meilleures pratiques, il est suggéré de choisir un emplacement différent de celui d'origine pour enregistrer les fichiers récupérés.

Pour Windows Vista/7/8/10/11
Pour macOS X 10.10 - macOS 13
Conclusion
Lorsqu'il s'agit de récupérer des fichiers supprimés sous Linux, debugfs offre une solution puissante pour les utilisateurs expérimentés. Néanmoins, pour ceux qui recherchent une option plus accessible, Wondershare Recoverit Linux Recovery est un excellent choix. Il facilite le processus de récupération et garantit des résultats probants, ce qui en fait une solution fiable en cas de perte de données.