🦎 프로그래밍

[AWS EC2] nohup 사용법 / 백그라운드 실행

cosmo225 2025. 3. 24. 16:06

 

aws의 ec2 인스턴스를 이용하여 스프링부트를 배포하였는데

컴퓨터를 끄면 서버가 종료되면

배포한 이유가 없어지는 것!!

 

이럴 때는 

nohup 을 이용하여 백그라운드에서 서버를 유지시킬 수 있다.

(무중단 배포)

 

👽 nohup이란?

no hang up 의 약자로, 말 그대로 '끊지 마' 라는 뜻

서버의 연결을 끊지 않고 계속 실행하는 것이다.

 

 

우선 ec2에 접속한 후, 

ps -ef | grep .jar

 

이 명령어를 실행하면 어떤 .jar 파일이 실행 중인지 알 수 있다.

 

나는 이미 백그라운드 실행을 돌려놓은 상태였기 때문에 다음과 같이 jar 파일이 실행되고 있는 걸 볼 수 있다!

 

아무것도 없다고 가정하고

백그라운드 실행을 돌려야 할 때는 

nohup java -jar (프로그램명) & 

 

을 입력하면 된다.

아무 로그도 뜨지 않고 ignoring 어쩌고 뜨는데 잘 실행된 것이다.

 

잘 실행되고 있는지 확인하려면

cat nohup.out

 

을 보면 로그를 볼 수 있다.

 

 

이제 백그라운드 실행을 멈추려면

실행되고 있는 프로그램의 pid, 즉 앞에 써 있는 숫자를 입력하면 되는데

현재 내 프로그램은 21226 이다

kill -9 {pid 번호}

 

이걸 실행하면 된다

 

 

없어진 모습!