Java / / 2022. 4. 25. 09:49

[Linux/CentOS 7] 프로세스, 작업환경 명령어(kill, ps, jobs...)

반응형

프로세스

프로세스는 현재 시스템에서 실행 중인 프로그램을 뜻합니다.

사용자가 사용한 명령도 프로세스가 되어 실행되는데, 시스템에는 사용자가 실행한 프로세스 외에도 사용자 관리, 메모리 관리, 네트워크 접속 관리 등 다양한 기능을 수행하는 많은 프로세스가 실행되고 있습니다.

 

프로세스의 번호

각 프로세스는 고유한 번호를 갖고 있고 이를 PID 라 부릅니다.

PID는 1번부터 시작하고 프로세스가 실행되면서 하나씩 증가하여 부여됩니다.

 

프로세스 관련 명령어

ps : ps 명령의 옵션에 따라 자세한 프로세스 정보를 확인할 수 있습니다.

  • -e : 시스템상의 모든 프로세스에 대한 정보를 출력한다.
  • -u : 사용자의 프로세스를 출력한다.
  • -l, -f :  전체 목록을 출력한다. (PPID / NICE / PRIORITY)

top : ps 와 달리 지속적인 모니터링 기능을 한다. (작업관리자와 유사)

uptime : 부하평균만 확인한다.

w : 부하 평균 + 현재 시스템에 접속 중인 사용자의 작업내역을 보여준다.

 

작업환경

shell 에서는 프로세스를 작업 (job) 단위로 관리를 합니다.

작업은 포그라운드 (foreground)  백그라운드 (background) 두 가지 방식으로 동작합니다.

 

- 포그라운드 : 작업이 종료되는 시점까지 다른 쉘 명령어를 수행할 수 없고 대기합니다.

- 백그라운드 : 작업을 하는 동시에 다른 명령어들을 실행시킬 수 있습니다.

 

동시에 여러 명령어들을 실행시키는 것을 멀티 태스킹 (multi-tasking)이라고 합니다.

포그라운드에서 실행 중인 작업은 ctrl + c로 종료할 수 있습니다.

 

백그라운드에서 명령어를 실행하기 위해서 뒤에 & 를 붙여줍니다.

백그라운드 상태에서는 바로 다른 명령어들을 실행할 수 있습니다.

jobs 명령어를 통해서 백그라운드에서 실행 중인 작업을 확인할 수 있습니다.

[1] 은 작업의 고유 번호입니다.

 

프로세스 신호 종류

신호 번호 신호 이름  설명
1 HUP 프로세스 종료 없이 구성파일 리로드
2 INT 키보드 인터럽트
3 QUIT 키보드 종료 및 덤프 생성
9 KILL 즉각적인 강제적 종료
15 TERM 정상적인 종료
18 CONT 중지된 프로세스 다시 시작
19 STOP 프로세스 동작 중지
20 TSTP 프로세스 동작 중지

 

신호 전달 명령어

- kill : 단일 프로세스에 PID를 이용해서 신호를 전달한다.

   kill [SIG] [PID 또는 %JID]

 

- killall : 프로그램파일의 이름(명령어)을 이용해서 여러 프로세스를 동시에 제어한다.

   killall [SIG] [PATTERN]

 

pkill : 이름+특성을 이용해서 여러 프로세스를 제어한다.

 

- pgrep : pkill과 동일한 사용법으로 해당하는 PID 만 확인한다.

 

 

kill -18 명령으로 중지된 프로세스를 다시 시작시켰습니다.

 

kill -9로 프로세스를 강제종료 합니다.

 

 

 

https://imjeongwoo.tistory.com/71

반응형

'Java' 카테고리의 다른 글

Apache 로드밸런싱 + 세션 클러스터링  (0) 2022.05.18
Tomcat에 Context 추가하기  (0) 2022.04.29
[Linux] 크론탭, Crontab 설정  (0) 2022.04.25
click 이벤트 중복 제어  (0) 2022.03.11
IntelliJ + Github 연동하기  (0) 2022.03.09
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유