Come si può ripristinare un file che è stato eliminato ma è ancora aperto da un processo?
Il post sul blog "Ripristino di file da /proc" spiega come eseguire questa operazione su Linux:
- Utilizzare
lsof(ad es.lsof -c name) Per trovare tutti i file attualmente aperti per il processo dato (il cui nome inizia conname). Dall'output vengono appresi il processopide il descrittore di file (fd) del file che si sta cercando. - Usa
cp /proc/<pid>/fd/<fd>/ tmp / ripristinato-file` per fare una copia.
Il primo passo funziona anche su OS X. Tuttavia, il passaggio 2 sembra più complicato. Esiste una funzione simile su OS X?
(Ho provato /dev/fdma nel mio caso, non conteneva il PID / FD del mio processo / file.)