서버 운영/Linux

리눅스 마스터 1급 2차 기출 정리 - 프로세스 관리

meong_j 2021. 10. 11. 15:21
728x90
반응형

프로세스 실행

프로세스는 시스템에서 동작중인 프로그램을 지칭함

 

프로세스아이디(PID)로 실행중인 프로세스 확인

cat /proc/프로세스아이디(PID)/exe

 

프로세스 관리

pgrep

프로세스 명 기반으로 검색하는 명령으로 PID 출력

pgrep [option] [프로세스명]

option 설명
-u 사용자명 특정 사용자에 대한 모든 프로세스 출력

 

pkill

프로세스 명을 사용해 특정 프로세스에 시그널 보내는 명령어

pkill [option] [프로세스명]

option 설명
-시그널번호 특정 프로세스에 몇번 시그널 보냄
-u 사용자명 특정 사용자에 대한 모든 프로세스

 

kill

pkil과 기능적 차이점 없음

PID를 사용해 특정 프로세스에 시그널 보내는 명령어

kill [option] [PID]

 

 

killall

지정된 명령이 실행중인 모든 프로세스에 시그널 보내는 명령어

killall [option] [프로세스명 or PID]

 

문제)

다음은 특정 사용자의 프로세스를 관리하는 과정이다.

가. ihduser 사용자가 실행시킨 프로세스의 PID를 출력한다
# pgrep -u ihduser

나. ihduser 사용자가 실행시킨 프로세스강제 종료시킨다.
# pkill -9 -u ihduser
혹은 
# killall -9 -u ihduser

 

 

프로세스 우선순위

nice

프로세스의 우선순위 변경, 프로세스명으로 NI값 설정

* NI : -20 ~ 19 까지 범위 지정(작을수록 우선순위가 높다)

 

nice [option(NI)] 프로세스명

 

 

renice

실행 중인 프로세스의 우선순위 변경, PID로 NI값 설정

 

renice [option(NI)]  PID

 

 

문제)

PID가 1222인 프로세스의 NI 값을 할당 가능한 최댓값으로 설정하여 우선순위 최대한 높인다
# renice --20 1222

 

로그인해서 사용 중인 bash의 NI 및 PRI 값을 확인한다
# ps -l 
또는 
# top

bash 프로세스에 설정된 NI값을 10만큼 감소시켜 우선순위를 높인다
# nice --10 bash
또는 
# nice -n -10 bash

PID가 513인 프로세스의 NI값을 할당 가능한 최댓값으로 지정해서 우선순위를 높인다
# renice -20 513
또는
# renice -n -20 513

 

 

crontab

cron을 이용하여 프로세스 스케쥴링 관리

분 : 시 : 일 : 월 : 요일 : 사용자명 : 명령어

 

crontab [option]

option 설명
-l cron 작업 내용 확인
-e cron 작업 내용 수정
-r cron 작업 파일 삭제
-u [사용자명] 사용자명가 작성한 cron 확인

 

가. ihduser 사용자가 설정한 cron 작업 내용을 확인한다.
# crontab  -l -u ihduser
나. ihduser 사용자가 설정한 cron 작업 내용을 수정한다.
# crontab -e -u ihduser
다. ihduser 사용자가 설정한 cron 작업 파일을 삭제한다.
# crontab -r -u ihduser

 

nohup

작업 중인 터미널 창이 닫히거나 로그아웃해도 백그라운드 프로세스로 작업

nohup [프로세스] &

 

예시)

nohup tar cvf source.tar /opt/src &

 

반응형