A veces las personas eliminan archivos que no deberían, un proceso de larga duración todavía tiene el archivo abierto, y recuperar los datos mediante captura /proc/<pid>/fd/N
no es lo suficientemente impresionante. Lo suficientemente impresionante sería si pudiera "deshacer" la eliminación ejecutando alguna opción mágica en ln que le permitiera volver a vincular al número de inodo (recuperado a través de lsof).
No puedo encontrar ninguna herramienta de Linux para hacer esto, al menos con Google superficial.
¿Qué tienes, serverfault?
EDITAR1: La razón por la que capturar el archivo /proc/<pid>/fd/N
no es lo suficientemente impresionante es porque el proceso que todavía tiene el archivo abierto todavía le está escribiendo. Una eliminación elimina la referencia al inodo del espacio de nombres del sistema de archivos. Lo que quiero es una forma de recrear la referencia.
EDIT2: 'debugfs ln' funciona, pero el riesgo es demasiado alto, ya que afecta a los datos sin procesar del sistema de archivos. El archivo recuperado también es loco inconsistente. El recuento de enlaces es cero y no puedo agregarle enlaces. Estoy peor de esta manera ya que solo puedo usar /proc/<pid>/fd/N
para acceder a los datos sin corromper mi fs.