반응형
청춘고양이
배움을 기록하는 곳
청춘고양이
전체 방문자
오늘
어제
  • Hello World (119)
    • JQuery (5)
    • In my opinion (4)
    • HTML&CSS (8)
    • JS (9)
    • JAVA (21)
    • Spring Boot (21)
    • Node.js (1)
    • Linux (7)
    • Git (2)
    • Kotlin (4)
    • Fluttor (4)
    • 정보처리기사 (19)
    • AWS (1)
    • Oracle (8)
    • MySQL (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • css
  • 가위바위보js
  • 초보개발
  • 중복 제거 로또
  • 스크롤js
  • js 패스워드 변경
  • 제이쿼리 패스워드 변경
  • 객체 안의 함수
  • 제이쿼리 비밀번호
  • 쉬프트 연산
  • 제이쿼리
  • 자바
  • 청춘고양이
  • 자바db연동
  • js
  • js 로또 번호
  • spring 기본설정
  • js 비밀번호
  • ScrollEffectJs
  • 제이쿼리 버튼클릭시 색 변경

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청춘고양이

배움을 기록하는 곳

Linux

백그라운드에서 Java 애플리케이션(WAR 파일) 실행하기

2024. 6. 26. 14:56
반응형

웹 애플리케이션 서버를 백그라운드에서 실행하면 터미널을 닫아도 서버가 계속 작동합니다. 이는 서버 유지 관리나 재부팅 시 유용합니다. 이 글에서는 nohup 명령어를 사용하여 Java 애플리케이션을 백그라운드에서 실행하는 방법을 설명합니다.

1. 필요한 도구 설치

먼저, Java가 설치되어 있어야 합니다. 설치되지 않은 경우, 다음 명령어를 사용하여 설치합니다.

Ubuntu/Debian:

sudo apt update
sudo apt install default-jre

CentOS/Fedora:

sudo yum install java-1.8.0-openjdk

2. 애플리케이션 실행하기

nohup 명령어를 사용하여 애플리케이션을 백그라운드에서 실행합니다. & 연산자를 사용하면 프로세스를 백그라운드에서 실행할 수 있습니다.

nohup java -jar community-22.9.1.0.war &

위 명령어를 실행하면 다음과 같은 메시지가 나타납니다.

nohup: ignoring input and appending output to 'nohup.out'
이 메시지는 nohup이 입력을 무시하고 모든 출력을 nohup.out 파일에 기록한다는 것을 의미합니다.
 

3. 실행 상태 확인하기

서버가 백그라운드에서 정상적으로 실행되고 있는지 확인하려면 ps 명령어를 사용합니다.

ps aux | grep java

4. 로그 확인하기

애플리케이션의 로그를 확인하려면 nohup.out 파일을 확인합니다.

tail -f nohup.out

5. 프로세스 종료하기

백그라운드에서 실행 중인 프로세스를 종료하려면 kill 명령어를 사용합니다. 먼저 프로세스 ID(PID)를 찾습니다.

ps aux | grep java

그런 다음, kill 명령어를 사용하여 해당 프로세스를 종료합니다.

kill <PID>

예를 들어, PID가 1234인 경우.

kill 1234

6. 추가 팁: screen 또는 tmux 사용하기

nohup 대신 screen이나 tmux와 같은 도구를 사용하면 더 유연하게 터미널 세션을 관리할 수 있습니다. 이 도구들은 세션을 분리하고 다시 연결할 수 있는 기능을 제공합니다.

screen 설치 및 사용.

sudo apt install screen  # Ubuntu/Debian
sudo yum install screen  # CentOS/Fedora

screen
java -jar community-22.9.1.0.war

세션을 분리하려면 Ctrl+A를 누른 후 D를 누릅니다. 다시 연결하려면 다음 명령어를 사용합니다.

screen -r

결론

서버를 백그라운드에서 실행하는 것은 서버 유지 관리 및 안정성을 위해 매우 중요합니다. nohup 명령어와 & 연산자를 사용하여 Java 애플리케이션을 백그라운드에서 실행하면, 터미널을 닫아도 서버가 계속 작동합니다. 또한 screen 또는 tmux와 같은 도구를 사용하여 더 유연하게 터미널 세션을 관리할 수 있습니다. 이 방법들을 통해 서버의 가용성을 높이고, 유지 관리 작업을 더욱 원활하게 수행할 수 있습니다.

 

반응형
저작자표시 변경금지 (새창열림)

'Linux' 카테고리의 다른 글

리눅스에서 네트워크 패킷 테스트: 네트워크 성능과 보안 점검  (0) 2025.03.18
tail 명령어 활용법  (0) 2024.07.16
#Linux 3  (2) 2022.11.08
#Linux 2  (0) 2022.11.07
#Linux 1  (0) 2022.11.07
    'Linux' 카테고리의 다른 글
    • 리눅스에서 네트워크 패킷 테스트: 네트워크 성능과 보안 점검
    • tail 명령어 활용법
    • #Linux 3
    • #Linux 2
    청춘고양이
    청춘고양이
    신입개발자

    티스토리툴바