ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Linux] 실행중인 프로세스 유지한 채 ssh 로그아웃하기
    서버 2016. 11. 11. 09:30

    nohup으로 실행하지 않고 포그라운드로 프로세스를 실행하다가 ssh를 로그아웃해야 할 때 사용하는 기능입니다.

    1. ctrl + z를 눌러 포그라운드로 실행되는 프로세스를 중단시킵니다.
    2. bg 를 입력해 중단된 프로세스를 백그라운드에서 실행
    3. disown 를 입력해 작업의 소유권을 shell session에서 해제
    4. ssh 로그아웃

    위와 같이 한 다음, 다시 로그인 해 확인하면 해당 프로세스가 끊기지 않고 계속 동작하는 것을 볼 수 있습니다.

    $ python3 test.py
    
    
    # ctrl + z 키 누름
    
    
    [1]+  Stopped                 python3 test.py
    $ bg # 만약 bg로 되지 않는다면 bg 1 입력
    [1]+ python3 test.py &
    $ disown
    $ exit
     
    # 이후 ssh 재로그인 한 다음 프로세스 확인
     
    $ ps -ef | grep python
    bear  9341  9288 31 09:19 pts/0    00:00:17 python3 test.py


    이전에 백그라운드로 실행시킨 작업들에 대해 전부 shell session 소유권을 해제하고자 하면 -a 옵션을 붙이면 됩니다.

    $ disown -a # 백그라운드 전체 프로세스에 대해 소유권 해제


    댓글