Manchmal löschen Leute Dateien, die sie nicht löschen sollten. Bei einem langen Prozess ist die Datei immer noch geöffnet, und das Wiederherstellen der Daten durch Catting ist /proc/<pid>/fd/N
einfach nicht großartig genug. Genial genug wäre, wenn Sie das Löschen "rückgängig machen" könnten, indem Sie eine magische Option ausführen, mit der Sie sich wieder mit der Inode-Nummer verbinden können (wiederhergestellt durch lsof).
Ich kann keine Linux-Tools finden, um dies zu tun, am wenigsten mit flüchtigem Googeln.
Was hast du, Serverfehler?
EDIT1: Der Grund, warum das Catting der Datei /proc/<pid>/fd/N
nicht großartig genug ist, ist, dass der Prozess, bei dem die Datei noch geöffnet ist, noch in die Datei schreibt. Beim Löschen wird der Verweis auf den Inode aus dem Namespace des Dateisystems entfernt. Was ich möchte, ist eine Möglichkeit, die Referenz neu zu erstellen.
EDIT2: 'debugfs ln' funktioniert, aber das Risiko ist zu hoch, da es rohe Dateisystemdaten frobs. Die wiederhergestellte Datei ist auch verrückt inkonsistent. Die Linkanzahl ist Null und ich kann keine Links hinzufügen. Mir geht es auf diese Weise schlechter, da ich nur /proc/<pid>/fd/N
auf die Daten zugreifen kann, ohne meine fs zu beschädigen.