Mam skrypt na mini serwerze Mac, który powoli pobiera plik z wieloma gigabajtami. Chciałbym uruchomić ten skrypt przez SSH z innego serwera (linux) za pomocą ssh mac-server 'nohup /path/to/script arguments'
ale natychmiast zabij połączenie SSH, gdy tylko wiem, że skrypt został pomyślnie uruchomiony. Po uruchomieniu połączenie SSH nie służy żadnemu użytecznemu celowi, systematycznie zawodzi gdzieś podczas pobierania i blokuje wykonanie na serwerze linux.
Nie mogę tak po prostu zrobić ssh -f
lub ssh &
ponieważ potrzebuję polecenia, aby nie powiodło się na serwerze linux, jeśli skrypt nie uruchamia się (lub jeśli mac nie jest osiągalny).
Odpowiedzi:
To pytanie było szczegółowe i odpowiedzi w usłudze ServerFault .
Podsumowując, znaleziono 2 rozwiązania:
Posługiwać się
nohup
uruchomić zadanie asynchroniczne + zamknąć deskryptory plików:Posługiwać się
screen -d -m
uruchomić zadanie asynchroniczne. Następnie można to sprawdzić (za pomocąscreen -ls
) lub ponownie dołączone w późniejszym czasie.źródło