Jak odzyskać usunięty plik, który jest nadal otwarty?

20

Jak przywrócić plik, który został usunięty, ale nadal jest otwarty przez proces?

W blogu „Przywracanie plików z /proc wyjaśniono, jak to zrobić w systemie Linux:

  1. Użyj lsof(np. lsof -c name), Aby znaleźć wszystkie pliki aktualnie otwarte dla danego procesu (którego nazwa zaczyna się od name). Z danych wyjściowych poznasz proces pidi deskryptor pliku ( fd) pliku, którego szukasz.
  2. Użyj cp /proc/<pid>/fd/<fd>/ tmp / restored-file`, aby wykonać kopię.

Pierwszy krok działa również jeden na jeden w OS X. Jednak krok 2 wydaje się bardziej skomplikowany. Czy w OS X jest podobna funkcja?

(Próbowałem, /dev/fdale w moim przypadku nie zawierał PID / FD mojego procesu / pliku.)

Hbf
źródło

Odpowiedzi:

3

Nie mogłem znaleźć odpowiednika OSX, ale i tak odpowiadam, ponieważ może to być pilne. Jeśli plik jest naprawdę ważny do odzyskania i musisz zamknąć system, zamontuj system plików, który był w trybie tylko do odczytu, i zobrazuj partycję za pomocą narzędzia takiego jak CloneZilla, co pozwoli zachować możliwość korzystania z różnych narzędzi do odzyskiwania w jeśli miejsce, którego używał plik, zostanie przeniesione do innego pliku.

W zależności od typu pliku, który chcesz odzyskać, PhotoRec może go znaleźć. Bezpłatna wersja Disk Drill może być również przydatna, a w zależności od używanego systemu plików istnieje niewielka szansa, że ​​TestDisk może okazać się pomocny (nie w pełni obsługuje systemy plików Mac, nawet jeśli działa na OSX).

Stephanie
źródło
1
Testdisk: cgsecurity.org/wiki/TestDisk ; Photorec : cgsecurity.org/wiki/PhotoRec - Oba są lepsze niż większość innych narzędzi do odzyskiwania plików, z których korzystałem. Photorec niekoniecznie odzyskuje metadane, ale dane tam są. Prawdopodobnie jest już za późno, ale możesz również uruchomić jeden z nich z dysku flash przed ponownym uruchomieniem, jeśli uważasz, że ryzyko innego zastąpienia sektorów jest niskie.
Nick
Dzięki, @Stephanie, bardzo miło z twojej strony, że podzieliłeś się podejściem i narzędziami. Zadawałem to pytanie z zainteresowaniem, aby dowiedzieć się więcej o OS X, więc na szczęście nie było to pilne (ale doceniam twoją szybką odpowiedź!).
Hbf