Est-il possible de restaurer des fichiers/répertoires qui ont été supprimés du terminal à l'aide de la fonction rm
y rm -r
?. Si un fichier est supprimé depuis l'interface graphique, il peut être restauré depuis la corbeille, mais comment restaurer un fichier s'il a été supprimé à l'aide de l'utilitaire rm ?
Réponses
Trop de publicités?À cette fin, j'utilise trash-cli
et l'alias suivant dans mon ~/.bashrc
alias rm=trash
Et le trash-cli
peut être installé par la commande followoing : sudo apt-get install trash-cli
.
Les fichiers que vous supprimez seront déplacés vers la corbeille, et vous pourrez les voir dans la corbeille de Nautilus.
Vous pouvez toujours accéder au véritable rm
en utilisant l'une des méthodes suivantes :
command rm something
'rm' something
\rm something
Il existe également des commandes permettant d'accéder à la corbeille à partir du terminal, trash-list
, restore-trash
又は trash-restore
), trash-empty
installable à partir du paquet trash-cli (voir ensuite leurs pages de manuel).
Dernière remarque, il n'est pas conseillé d'utiliser un tel alias pour le super-utilisateur, car il peut interférer avec les opérations du système.
Le supprimer du terminal le supprime définitivement - la récupération est très difficile et parfois impossible.
Si votre type de partition est ext3
(vérifiez-le en utilisant le System->Administration->Disk Utility
), alors jetez un coup d'œil à ext3undel .
Si ce n'est pas le cas (si vous avez installé Ubuntu avec par défaut ), essayez le extundelete
programme.
Il n'y a cependant aucune garantie que vous récupériez quoi que ce soit.
Vous êtes à la recherche de : supprimé - utilitaire pour récupérer les fichiers supprimés d'une partition ext3/ext4
Pour trouver un tel paquet, vous pouvez essayer : apt-cache search undelete
Pour utiliser l'utilitaire, installez-le avec : sudo apt-get install extundelete
Après l'installation, invoquez man extundelete
et l'étudier attentivement.
Juste comme une alternative, si vous savez spécifiquement quel type de fichier c'est...
sudo apt-get install foremost
Maintenant, ouvrez /etc/foremost.conf
et vous verrez une longue liste de lignes commentées. Si votre type de fichier existe, décommentez la ligne (vous pouvez également vouloir supprimer les lignes non pertinentes).
Si votre type de fichier n'existe pas, ajoutez votre propre ligne. Disons que je veux récupérer un fichier .css et que je sais qu'il fait environ 40K. Je pourrais ajouter ceci :
css n 40000 Theme\sName: Plugin\sFixes
La deuxième colonne fait référence à la sensibilité à la casse, la troisième colonne fait référence à la limite supérieure de la taille, la quatrième colonne indique comment le fichier commence (n'oubliez pas d'utiliser des caractères échappés) et la dernière colonne indique comment le fichier se termine habituellement.
Utilisez la commande suivante (modifiez le disque en conséquence. Vous pourriez vérifier avec df
commande)
foremost -v -T -c /etc/foremost.conf -i /dev/sda -o output
Ce qui va se passer ensuite, c'est que le plus important va créer un dossier appelé output et y déposer toutes les données récupérées (dans ce cas). De là, vous pouvez utiliser diff
o meld
pour comparer les "fichiers" récupérés et voir lequel est le plus à jour.
En termes très abstraits, chaque fois que vous supprimez un fichier sur l'interface graphique, le fichier est "déplacé" vers un "tampon" spécial, un répertoire appelé trash
. Vous pouvez le trouver dans votre home
répertoire, ~/.local/share/Trash/
. Les fichiers "supprimés" de ce répertoire, le seront réellement. Cette suppression réelle est ce qui se passe lorsque vous utilisez la commande rm
sur un fichier.
Il est extrêmement difficile de récupérer des fichiers supprimés. Les fichiers dans le système de fichiers sont représentés comme des nœuds dans un arbre B ou similaire. Lorsqu'un fichier est supprimé en utilisant rm
L'arbre est mis à jour, le nombre de liens durs est réduit, l'entrée correspondante dans la liste du répertoire est supprimée. Si votre fichier avait un lien dur, votre fichier est absolument sûr. Vous pouvez faire un file / -samefile filename
. Vous pouvez rechercher le fichier si vous vous souvenez aussi de son numéro d'inode (ce qui est rarement le cas).
Un autre cas est celui où aucune des possibilités ci-dessus n'est vraie. Chaque fois que vous rm
un fichier, l'entrée du fichier sur le répertoire est supprimée, réduisant le nombre de liens durs d'une unité. Et si le nombre de liens durs tombe à zéro, alors le pointeur vers le fichier sur l'inode est supprimé, ou marqué pour être supprimé. Dans tous les cas, votre fichier réside "toujours" sur le disque dur. Le fichier n'est réellement effacé du disque dur que lors d'un remontage ultérieur. La récupération d'un fichier à ce moment-là est extrêmement difficile, car elle implique de passer par l'arborescence du système de fichiers et les inodes représentant les emplacements réels des blocs de disque. Il existe un outil populaire dont j'ai entendu parler, mais que je n'ai jamais utilisé, appelé extundelete
. Bien qu'il n'y ait aucune garantie, cela vaut la peine d'essayer.
Une fois que vous aurez récupéré vos fichiers avec succès ou non, empressez-vous de faire des sauvegardes régulières. C'est extrêmement simple sur Ubuntu.
- Réponses précédentes
- Plus de réponses