===== Comment récupérer un fichier supprime sous linux ====== {{:systeme:linux_logo.jpeg?nolink100 |}}Cela vous est-il déjà arrivé?\\ Vous avez réalisé que vous avez supprimé par erreur un fichier : * à l'aide de la touche ''Suppr'' * en utilisant ''rm'' dans la ligne de commande Dans le premier cas, vous pouvez toujours aller dans la Corbeille, rechercher le fichier et le restaurer à son emplacement d'origine.\\ Mais qu'en est-il du second cas? \\ Comme, je suis sûr que vous le savez sans doute, la ligne de commande Linux n'envoie pas les fichiers supprimés n'importe où, il les supprime.\\ Dans cet article, nous partagerons un conseil qui peut être utile pour éviter que cela ne vous arrive, et un outil que vous pouvez envisager d'utiliser si à un moment donné vous êtes assez négligent de le faire de toute façon. ~~READMORE~~ ==== Création d'un alias 'rm -i' ==== L'option ''-i'', lorsqu'elle est utilisée avec ''rm'' (ainsi que d'autres outils de manipulation de fichiers tels que cp ou mv) provoque l'apparition d'une invite avant de supprimer un fichier.\\ Il en va de même pour copier, déplacer ou renommer un fichier dans un emplacement où déjà existe un même nom.\\ Cette invite vous donne une deuxième chance de considérer si vous voulez réellement supprimer le fichier, si vous confirmez l'invite.\\ Dans ce cas, je suis désolé, mais cette astuce ne vous protégera pas de votre propre négligence. Pour remplacer ''rm'' par un alias à 'rm -i', faites: alias rm='rm -i' La commaRde ''alias'' confirmera que ''rm'' est maintenant un alias: test@test1:~# alias rm='rm -i' test@test1:~# alias alias rm='rm -i' Toutefois, cela ne durera que pendant la session actuelle, dans le shell actuel.\\ Pour rendre le changement permanent, vous devrez ajouter et sauvegarder ''alias rm='rm -i' '' à la fin du fichier d'un fichier d’initialisation du shell : * soit de ''~/.bashrc'' (certaines distributions peuvent utiliser ''~/.profile'') pour le login que vous utilisez. * ou de ''/etc/bash.bashrc'' (certaines distribution peuvent aussi utiliser ''/etc/bashrc'') pour l'ensemble des login présent sur la machine. Pour que les modifications du fichier (~/.bashrc, ~/.profile, /etc/bash.bashrc ou /etc/bashrc) prennent effet immédiatement saisir : . ~/.bashrc ou . ~/.profile ou . /etc/bash.bashrc ou . /etc/bashrc Lorsqu’un script est appelé ainsi appelé ''. script'', il est interprété directement par le shell en cours d’exécution, sans lancer de nouvelle instance.\\ Aussi les variables et fonctions définies par ce script seront-elles disponibles même après sa terminaison. Vérifier le résultat avec les commande ''alias'', comme au dessus : test@test1:~#alias test@test1:~# test@test1:~#. ~/.bashrc test@test1:~# alias alias rm='rm -i' ==== L'outil de forensic - foremost ==== Espérons que vous ferez attention à vos fichiers et que vous n'aurez besoin que d'utiliser cet outil lors de la récupération d'un fichier perdu **à partir d'un disque externe ou d'une clé USB**. Toutefois, si vous vous rendez compte que vous avez accidentellement supprimé un fichier dans votre système et vous paniquez.\\ Jetons un coup d’œil a un outil de forensic qui a été conçu pour ce genre de scénarios. Pour installer foremost dans CentOS/RHEL 7, vous devez d'abord activer Repoforge: rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm yum install foremost Dans Debian et les dérivés, il suffit de faire : aptitude install foremost Une fois l'installation terminée, nous allons procéder à un test simple.\\ Nous commencerons par supprimer un fichier image nommé nosdos.jpg dans le répertoire ''/boot/images'': cd images rm nosdos.jpg Pour le récupérer, utilisez avant tout (vous devrez d'abord identifier la partition sous-jacente ''/dev/sda1'' où ''/boot'' se trouve dans ce cas): foremost -t jpg -i /dev/sda1 -o /home/test/rescued Où ''/home/test/rescued'' est un répertoire sur un disque séparé, gardez à l'esprit que récupérer des fichiers sur le même disque où ils ont été enlevés n'est pas une décision judicieuse. Si, au cours de la récupération, vous occupez les mêmes secteurs de disque où les fichiers supprimés étaient auparavant, il se peut qu'il ne soit pas possible de récupérer quoi que ce soit.\\ En outre, il est essentiel d'arrêter toutes vos activités avant d'effectuer la récupération. Après la fin de l'exécution, le fichier récupéré (si la récupération était possible) se trouve dans le répertoire ''/home/test/rescued/jpg''. \\ source : [[http://www.tecmint.com/recover-deleted-file-in-linux/|techmint.com]]