Comment récupérer un fichier supprimé qui est toujours ouvert?

20

Comment restaurer un fichier qui a été supprimé mais qui est toujours ouvert par un processus?

Le billet de blog "Restauration de fichiers à partir de /proc" explique comment procéder sur Linux:

  1. Utilisez lsof(par exemple, lsof -c name) pour rechercher tous les fichiers actuellement ouverts pour le processus donné (dont le nom commence par name). À partir de la sortie, vous apprenez le processus pidet le descripteur de fichier ( fd) du fichier que vous recherchez.
  2. Utilisez cp /proc/<pid>/fd/<fd>/ tmp / restore-file` pour faire une copie.

La première étape fonctionne également de manière individuelle sur OS X. Cependant, l'étape 2 semble plus compliquée. Existe-t-il une fonctionnalité similaire sur OS X?

(J'ai essayé /dev/fdmais dans mon cas, il ne contenait pas le PID / FD de mon processus / fichier.)

Hbf
la source

Réponses:

3

Je n'ai pas pu trouver d'équivalent OSX, mais répondre quand même car cela peut être urgent. Si le fichier est vraiment important à récupérer et que vous devez arrêter le système, remontez le système de fichiers sur lequel le fichier était en lecture seule et imagez la partition avec un outil tel que CloneZilla, - cela préservera votre capacité à utiliser divers outils de récupération dans cas, l'espace utilisé par le fichier est réaffecté à un autre fichier.

Selon le type de fichier dont vous avez besoin pour récupérer, PhotoRec peut être en mesure de le trouver. De plus, la version gratuite de Disk Drill peut être utile, et selon le système de fichiers utilisé, il y a une petite chance que TestDisk puisse être utile (ne prend pas complètement en charge les systèmes de fichiers Mac, même s'il fonctionne sur OSX).

Stéphanie
la source
1
Testdisk: cgsecurity.org/wiki/TestDisk ; Photorec : cgsecurity.org/wiki/PhotoRec - Les deux sont meilleurs que la plupart des autres outils de récupération de fichiers que j'ai utilisés. Photorec ne récupérera pas nécessairement les métadonnées, mais les données sont là. C'est probablement trop tard, mais vous pouvez également exécuter l'un d'entre eux sur un lecteur flash avant de redémarrer si vous pensez que le risque que quelque chose d'autre écrase les secteurs est faible.
Nick
Merci, @Stephanie, très gentil à vous, d'avoir partagé l'approche et les outils. Je posais la question par intérêt, pour en savoir plus sur OS X, donc heureusement aucune urgence (mais j'apprécie votre réponse opportune!).
Hbf