반달가면 이글루에서 백업 - http://bahndal.egloos.com/528463
기본적인 내용이지만, 그래도 정리해 두기로.
원격의 리눅스 서버에 ssh 접속해서 열심히 작업을 하다가, 집에 갈 시간이 다 되어서 로그아웃을 해야 하는데 아직 프로세스가 끝나지 않았을 경우에 해당 프로세스를 실행중인 상태로 남겨두기 위한 방법이다.
처음부터 백그라운드(background) 프로세스로 실행했다면 좋았을 테지만, 오래 걸릴 것을 예상치 못하고 본의 아니게 늦어지는 경우도 생기기 마련이다.
일단 ctrl+z 키를 눌러서 포그라운드(foreground)에서 실행중인 프로세스를 보류한 후, bg 명령으로 백그라운드로 전환한다. 그리고 disown 명령을 입력해서 작업에 대한 소유권을 ssh 세션에서 빼앗은 후에 로그아웃하자.
# my_command라는 프로세스 실행
my_command
# 시간이 없음. ctrl+z 눌러서 보류
[1]+ Stopped my_command
# 대괄호 안에 있는 번호의 작업을 백그라운으로 전환
bg 1
[1]+ my_command &
# 작업의 소유권을 shell session에서 해제
disown
# 집에 가자. 로그아웃 (... 그런다고 갈 수 있을까;;)
exit
혹시 이전에 백그라운드로 실행해 둔 작업이 더 있다면 jobs 명령을 이용해서 확인하면 된다. disown 명령을 사용할 때는 -a 옵션을 이용해서 모든 작업에 대한 소유권을 해제.
# 작업 목록 확인
jobs
# 전체 작업의 소유권을 현재 shell에서 해제(-a 옵션)
disown -a
# 로그아웃
exit
'리눅스' 카테고리의 다른 글
리눅스 X11 포워딩(X11 Forwarding) - ssh 접속으로 GUI 프로그램 실행하기 (0) | 2023.04.18 |
---|---|
우분투 서버에서 로그인후 자동으로 GUI 데스크탑 환경(X윈도우) 시작하기 (0) | 2023.04.18 |
우분투 서버에서 최소한의 GUI 환경 구성(OpenBox) (0) | 2023.04.18 |
xdotool - 리눅스 X윈도우(X11) 기반 데스크탑에서 작업 자동화 (2) | 2023.04.18 |
sshfs - 리눅스에서 ssh로 원격 디렉토리 연결(마운트)하기 (0) | 2023.04.18 |