Więc używam GNU Screen do zarządzania wieloma uruchomionymi skryptami / programami. Multipleksowanie i odłączalność jest bardzo pomocne.
Usunąłem skrypt z dysku i teraz mam problem ze znalezieniem kopii zapasowej. Jednak jedna z sesji terminalu wykonywała skrypt przed usunięciem pliku i nadal działa dobrze.
Czy istnieje sposób na przejęcie sesji terminala, na której jest aktualnie uruchomiony skrypt, w celu odzyskania zawartości tego pliku?
Odpowiedzi:
poszukaj pid skryptu za pomocą
ps
sprawdź
/proc/$PID/fd/
; powinien być uszkodzony link do pliku skryptu, alecat
powinien działać (podczas działania skryptu!):powodzenia!
źródło
rm
i inne narzędzia rozłączają plik, usuwając łącze z nazwy pliku do rzeczywistych danych (do których odwołuje się i-węzeł), ale dopóki istnieje odwołanie (twardy link lub otwarty uchwyt), i-węzeł nie jest usuwany.