ps
=process status
현재 실행 중인 프로세스의 상태를 보여준다
CPU 낮은 순으로 보여줌
옵션 | 내용 |
a | (all) 실행 중인 모든 프로세스 출력 |
e | 모든 프로세스 정보 |
u | (user) 사용자 이름, 프로세스 시작시간 출력 |
x | 접속 터미널 + 사용중인 모든 프로세스 출력 |
l | 자세한 정보 출력 |
ex)
ps aux
: 모든 사용자의 터미널에서 사용하는 프로세스 정보를 출력한다
ex)
ps ax | grep tomcat
: 톰캣 가동 여부를 확인하기
pstree
실행 중인 프로세스를 트리구조로 보여줌
옵션 | 내용 |
-p | 프로세스 id 표시 |
-n | 프로세스 id 표시 + 정렬 |
-a | 명령행 인자를 포함한 정보를 표시 |
-n | 해당 프로세스의 부모 프로세스를 음영 표시 |
ex)
pstree -p
ex)
pstree -np
ex)
pstree -a
jobs
백그라운드 작업, 중지상태인 작업 등을 보여준다
옵션 | 내용 |
-l | 프로세스 그룹id를 state 에 표시 |
-n | 프로세스 그룹 중 대표 프로세스id 표시 |
-p | 프로세스id 를 한 행씩 표시 |
ex)
jobs -p | grep '-^\[4\]': 프로세스id 4 출력
jobs -l | grep '-^\[4\]': 프로세스id 4 => PID 와 함께 출력
jobs -p | head -4: 4줄까지 jobs 내용 출력
bg, fg
bg: 백그라운드 작업으로 전환
- 방법: ctrl + z (작업을 일시중지) => bg 명령어
- 백그라운드 작업 실행시 명령어 끝에 & 붙이기
fg: 포그라운드 작업으로 전환
kill
프로세스 종료
옵션 | 내용 |
-l | (list) 시그널 종류 |
-s 시그널번호 -s 시그널명 |
전달할 시그널 종류 |
-1 | 재시작 |
-9 | 강제 종료 |
ex)
kill -15 101, 102: PID 101, 102 정상종료
kill -9 101, 102: PID 101, 102 강제종료
kill -9 10{1..2}: PID 101부터 102까지 강제종료
nice
- 프로세스 우선순위 확인 및 변경 명령어
- NI값이 조정된다
- 값: -20 ~ 19
- 값이 낮을수록 우선순위가 높다( -20: 가장 높다. 19: 가장 낮다)
- 디폴트 우선순위는 10
- 일반 사용자는 nice 값을 올리기만 할 수 있음
- root 사용자는 nice 값 올리기, 내리기 둘다 가능
ex)
nice -10 xxx: xxx의 NI값 10 증가 (10만큼 우선순위 낮아짐)
nice --10 xxx: xxx의 NI값 10 감소 (10만큼 우선순위 높아짐)
renice
- NI 값을 새로 지정하는 명령어
- (참고. nice: 기존 NI 값을 기준으로 순위를 높이거나 내린다)
- 프로세스 소유자와 root만 내릴 수 있는 명령어
ex)
renice -20 101
: PID 101의 NI값을 -20(최고 우선순위)로 지정
renice 19 102
: PID 102의 NI값을 19(최저 우선순위)로 지정
top
프로세스 상태 실시간 모니터링 명령어
5초마다 화면 갱신됨
ex)
top
nohup
- 작업이 백그라운드 작업으로 계속될 수 있도록 설정하는 명령어
- 사용자 로그아웃, 터미널 종료 등에도 프로세스가 꺼지지 않는다
- 명령어 뒤에 & 을 붙인다
- $HOME/nohup.out 파일이 생성돼 작업이 기록된다
ex)
nohup tar cvf xxx.tar opc /home/a1/test01 &
: xxx.tar 파일 압축해제를 nohup 설정하기
cron
- 주기적으로 반복적으로 실행되도록 하는 명령어
- crond: 스케줄링 서비스
- 파일: /etc/crontab (여기에 반복실행할 내용을 추가하면 됨
- /etc/crontab 에 넣을 형식: 분/시/날/달/요일/명령어
/etc/crontab 내용 확인
ex)
* 4 * * 2,4 /etc/xxx.sh: 매주 화, 목요일 오전 2, 4시에 /etc/xxx.sh 실행
30 2 * * 0-6 /etc/xxx.sh: 매일(일~토) 오전 2시 30분에 /etc/xxx.sh 실행
0 11 * * 1~5 /etc/xxx.sh: 월~금요일 오전 11시 정각에 /etc/xxx.sh 실행
10 9 25 * * /etc/xxx.sh: 매월 25일 오전 9시 10분에 /etc/xxx.sh 실행
11 11 15 5-10/2 * /etc/xxx.sh: 5월부터 10월까지 2달마다 15일 오전 11시 11분에 /etc/xxx.sh 실행
'컴퓨터 기본 > Linux' 카테고리의 다른 글
[Linux] 주변장치(printer, sound card, scanner) 연결 (0) | 2022.09.01 |
---|---|
[Linux] 파일 아카이브(archive), 파일 압축하고 해제하기 (0) | 2022.09.01 |
[Linux] 프로세스 관리 (1) | 2022.08.28 |
[Linux] 셸(shell) 종류, 환경설정, history 명령 (0) | 2022.08.27 |
리눅스 linux 명령어 (0) | 2021.12.22 |