Proces Pythona nie ma żadnych śladów po zamknięciu lub przekroczeniu limitu czasu sesji terminala unix

0

Uruchomiłem długo działający skrypt Pythona. Miał działać przez ponad 4 godziny. Uruchomiłem skrypt w tle przekierowując wyjście konsoli do jakiegoś pliku tekstowego. Przez jakiś czas monitorowałem przekierowane wyjście za pomocą „tail -f”.

Następnie zamknąłem sesję. Ponieważ wykonywanie skryptu odbywało się w tle, powinno być kontynuowane do końca.

Jednak następnego dnia chciałem poznać wyniki i jakoś nie znalazłem żadnych śladów wykonania skryptu. W pliku tekstowym znaleziono tylko kilka wierszy. Tymi kilkoma liniami były linie przekierowane do czasu, kiedy monitorowałem plik za pomocą „tail -f”.

Zanotowałem identyfikator procesu (# 30804) wykonywania skryptu python. Czy mogę znaleźć śledzenie procesu za pomocą identyfikatora procesu?


źródło

Odpowiedzi:

2

Użyj, nohupaby umożliwić kontynuowanie procesu po wylogowaniu. Lub użyj, screenaby umożliwić rozłączenie i ponowne połączenie z sesją logowania.

Barmar
źródło
- Tak masz rację. Ale próbowałem z harmonogramem cron i nieoczekiwanie to samo stało się z zadaniem cron. Zgłoszono bardzo niewiele dzienników. Jednak ręczne wykonanie skryptu zapewnia pełne uruchomienie i dzienniki.
Tego nie potrafię tak łatwo wytłumaczyć, przepraszam.
Barmar