ai-coding-mines목차GitHub

`nohup`만으로는 세션 종료 시 죽는다

Git · 자동화

증상

nohup ... &로 띄웠는데 셸 세션이 바뀌자 사라졌다. 로그가 중간에서 끊기고 프로세스는 0개.

원인

공유호스팅의 제한 셸은 로그인 세션 종료 시 자식 프로세스를 정리한다.

해법

setsid nohup python3 script.py args < /dev/null > out.log 2>&1 & disown

부수 교훈

장기 작업은 인자를 한 프로세스에 다 몰아준다. 묶음을 나눠 여러 번 띄우면 외부 API의 동시 슬롯 제한에 걸려 서로를 막는다.