Uruchamianie zadań na zdalnym serwerze za pośrednictwem SSH - cykl życia?

0

Dwa powiązane pytania:

  1. Jeśli ssh na zdalnym serwerze i rozpocznę długo działające zadanie na pierwszym planie ( :~$ ./my-task > out.log), czy proces będzie kontynuowany po zakończeniu połączenia z serwerem?

  2. Wykonanie tego samego długiego zadania z pytania nr 1 zajmuje około 5 minut. Jeśli otworzę inne okno terminala i pobawię się plikiem, do którego wysyłane jest wyjście ( tail -f out.log | grep 'Loop count'), czy może to wpłynąć na czas potrzebny my-taskdo ukończenia?

rodrigo-silveira
źródło

Odpowiedzi:

1

Po zabiciu połączenia z serwerem zadanie zostanie zakończone. Używam Tmuxdo tego rodzaju rzeczy.

Możesz zainstalować go w normalny sposób.

sudo apt-get install tmux

Chodzi o to, abyś sshwszedł na serwer, a następnie od startu powłoki tmuxi podłączony do wirtualnej konsoli tmux. Rozpocznij pracę z tmuxwirtualnej konsoli, odłącz się od niej, a następnie zakończ połączenie z serwerem.

tmuxWirtualnej konsoli pozostanie uruchomiony, a więc będą wszystkie swoje rzeczy w tym conole. Możesz połączyć się z serwerem i dowolnie dołączać do / odłączać od tmuxkonsoli.

Tmux ma pół przyzwoitą stronę podręcznika, ale oto kilka kluczy, które pomogą ci zacząć.

tmux ls lista uruchomionych sesji tmux.

tmux attach -t 0 dołącz do 0.

ctrl-B c utwórz terminal.

crtl-B d odłącz termianl.

ctrl-B " rozdziel terminal pionowo.

ctrl-B % podzielić terminal w poziomie.

arrows poruszać się po panelach.

0-9 wybiera Windows.

s przełącza sesje.

Mam nadzieję, że pomaga jako starter.

hatterman
źródło