본문 바로가기

Linux

process 정리

 

top 
프로세스의 상태와 CPU 상태를 실시간으로 볼 수 있는 명령어
시스템에 연결 중인 사용자 수 볼수이
	
-n	지정한 숫자만큼 화면 출력을 갱신한후 명
-u	지정한 사용자의 프로세스를 모니터링
-b	출력결과를 파일이나 다른 프로그램으로 전달
-d	화면갱신주기를 초 단위로 설정
-p	지정한 PID 프로세스를 모니터링
-P  CPU 사용률에 따라서 정렬할 때
-s  옵션을 사용하면 프로세스 정보 갱신 주기를 결정할 수 있다
ps [옵션]
현재 시스템에서 실행 중인 프로세스에 관한 정보를 출력하여 사용자에게 정보를 제공하는 명령어

기본 프로세스 출력

a : 터미널과 연관된 프로세스만 출력
x : 터미널과 연관되지 않는 프로세스만 출력
-A : 모든 프로세스 출력 (-e와 동일)
-e : 모든 프로세스 출력
-a : 세션 리더와 커미널과 연관되지 않은 프로세스를 제외하고 모든 프로세스를 출력

지정한 프로세스 출력

p : 지정한 PID 목록의 정보만 출력
-C : 지정한 프로세스의 실행 파일 이름의 정보만 출력
-u : 특정 사용자의 프로세스 정보를 출력

프로세스 표시 형식

u : 프로세스의 소유자 정보를 함께 출력
l : BSD 형식의 긴 형식으로 출력
e : 프로세스 정보와 함께 프로세스의 환경변수 정보도 출력
-l : 긴 포맷으로 출력
-o : 사용자 정의 형식 지정 가능

프로세스 장식

f : 프로세스 계층을 텍스트 형식의 트리구조를 보여줌.
-f : 전체 포맷으로 출력


F	프로세스 플래그
S	프로세스 상태코드
UID	프로세스 소유자이름
PID	프로세스 고유식별자
PPID	부모프로세스의 PID
C	프로세서 사용률 %로 표기
PRI	프로세스의 우선순위. 높은값이 낮은 우선순위
NI	nice 값이며 19에서 -20값
SZ	프로세스 이미지가 차지하는 물리적 페이지 크기
WCHAN	대기중일때 커널 함수의 이름
STIME	프로세스가 시작한 시간
TTY	터미널의 종류
TIME	총 CPU 사용시간
CMD	프로세스의 실행 시 명령줄

프로세스 상태코드:
D	인터럽트가 불가능한 대기상태로 일반적으로 입출력 시 의미
I	커널 쓰레드가 유휴상태를 의미
R	프로세스가 실행중이거나 실행 가능한 상태 의미
S	인터럽트가 가능한 대기상태 SLEEP
T	작업 제어신호에 의해 멈춤상태 SUSPEND
t	디버깅 중 디버거에 의해 멈춘상태
X	프로세스 죽은 상태
Z	좀비프로세스
<	높은 우선순위 상태
N	낮은 우선순위 상태
L	페이지가 락된 메로리를 갖고있음
s	세션 리더
|	멀티 쓰레드
+	포어그라운드 프로세스 그룹


$ ps aux      *# 모든 터미널의 프로세스를 소유자 정보와 함께 프로세스 정보를 출력*
$ ps aux | grep apache         *# 특정 프로세스(apache)만 출력*



$ ps -ef
*# 현재 실행중인 모든 프로세스의 정보를 전체 포맷으로 출력*

$ ps -ef | more
*# 모든 프로세스를 풀 포맷으로 보여준다, more명령어를 줘서 페이지단위로 출력*

$ ps -ef | grep apache
*# 모든 프로세스의 출력값을 grep을 이용하여 apache가 포함된 라인들을 출력*
Foreground로 동작 중인 프로세스를 suspend
ctrl + z
kill [options] [pid]

1	SIGHUP	 터미널에서 접속이 끊겼을때 보내지는 시그널, 변화된 내용을 적용하기 위해 
						재시작 할 때 사용된다. 
2	SIGINT	 인터럽트 시그널로 실행을 중지시킴, Ctrl + c 입력시 보내지는 시그널 
3	SIGQUIT	 실행 중지 시그널로서 Ctrl + \\ 입력시 보내지는 시그널 
9	SIGKILL	 프로세스를 강제로 종료 시키는 시그널 
15	SIGTERM	 kill의 기본 시그널로 정상 종료 시키는 시그널 
18	SIGCONT	 시그널에 의해 정지된 프로세스를 다시 실행시키는 시그널 
19	SIGSTOP	 정지 시그널 
20	SIGTSTP	 일시정지 시키는 시그널로서 Ctrl + z 입력시 보내지는 시그널
at [option]

지정된 시간에 명령어나 프로그램을 실행시키는 명령어입니다.
cron과 다른 점은 「cron」 은 설정한 날짜가 되면 반복적으로 등록된 처리가 실행되지만 
at 명령의 경우는 한 번만 처리가 실행됩니다.
1회성 작업의 경우 「cron」 보다는 「at」를 사용하는 것이 더 편리합니다

-f 파일명	스크립트 파일  등을 실행해 줄때 사용한다
-m	작업이 완료될 때 사용자에게 메일을 보낸다
-M	메일 보내기 않기
-t [[CC]YY]MMDDhhmm[.ss]	[[CC]YY]MMDDhhmm[.ss]로 시간 지정
-l	예약된 작업 목록을 보여준다. 
-r 번호	예약된 작업을 삭제한다.(unix)
-d 번호	예약된 작업을 삭제한다.(linux)
-q	queue 이름을 지정한다
-V	버전확인
nohup

사용자가 로그아웃하거나 터미널창을 닫아도 해당 프로세스를 백그라운드로
 전환하여 계속 작업될 수 있도록 해주는 명령

stty
터미널 설정 (키설정)

tty
가상터미널 생성가능
xinetd 슈퍼데몬
여러 인터넷 서버를 대신해서 메모리에 상주하여 대기하고 있다가 
서비스 요청시 해당 서비스 프로 그램을 구동시켜주는 슈퍼 데몬
nice
프로세스가 실행될때 실행 우선순위 조정
-20 ~ 19까지 순위값 조정가능
일반유저는 값만 증가가능

renice [조정수치] [pid]
실행 중인 프로세스의 우선순위를 조정할
일반유저는 값만 증가가능
  1. 프로세스 관리

top 
프로세스의 상태와 CPU 상태를 실시간으로 볼 수 있는 명령어
시스템에 연결 중인 사용자 수 볼수이
	
-n	지정한 숫자만큼 화면 출력을 갱신한후 명
-u	지정한 사용자의 프로세스를 모니터링
-b	출력결과를 파일이나 다른 프로그램으로 전달
-d	화면갱신주기를 초 단위로 설정
-p	지정한 PID 프로세스를 모니터링
-P  CPU 사용률에 따라서 정렬할 때
-s  옵션을 사용하면 프로세스 정보 갱신 주기를 결정할 수 있다
ps [옵션]
현재 시스템에서 실행 중인 프로세스에 관한 정보를 출력하여 사용자에게 정보를 제공하는 명령어

기본 프로세스 출력

a : 터미널과 연관된 프로세스만 출력
x : 터미널과 연관되지 않는 프로세스만 출력
-A : 모든 프로세스 출력 (-e와 동일)
-e : 모든 프로세스 출력
-a : 세션 리더와 커미널과 연관되지 않은 프로세스를 제외하고 모든 프로세스를 출력

지정한 프로세스 출력

p : 지정한 PID 목록의 정보만 출력
-C : 지정한 프로세스의 실행 파일 이름의 정보만 출력
-u : 특정 사용자의 프로세스 정보를 출력

프로세스 표시 형식

u : 프로세스의 소유자 정보를 함께 출력
l : BSD 형식의 긴 형식으로 출력
e : 프로세스 정보와 함께 프로세스의 환경변수 정보도 출력
-l : 긴 포맷으로 출력
-o : 사용자 정의 형식 지정 가능

프로세스 장식

f : 프로세스 계층을 텍스트 형식의 트리구조를 보여줌.
-f : 전체 포맷으로 출력


F	프로세스 플래그
S	프로세스 상태코드
UID	프로세스 소유자이름
PID	프로세스 고유식별자
PPID	부모프로세스의 PID
C	프로세서 사용률 %로 표기
PRI	프로세스의 우선순위. 높은값이 낮은 우선순위
NI	nice 값이며 19에서 -20값
SZ	프로세스 이미지가 차지하는 물리적 페이지 크기
WCHAN	대기중일때 커널 함수의 이름
STIME	프로세스가 시작한 시간
TTY	터미널의 종류
TIME	총 CPU 사용시간
CMD	프로세스의 실행 시 명령줄

프로세스 상태코드:
D	인터럽트가 불가능한 대기상태로 일반적으로 입출력 시 의미
I	커널 쓰레드가 유휴상태를 의미
R	프로세스가 실행중이거나 실행 가능한 상태 의미
S	인터럽트가 가능한 대기상태 SLEEP
T	작업 제어신호에 의해 멈춤상태 SUSPEND
t	디버깅 중 디버거에 의해 멈춘상태
X	프로세스 죽은 상태
Z	좀비프로세스
<	높은 우선순위 상태
N	낮은 우선순위 상태
L	페이지가 락된 메로리를 갖고있음
s	세션 리더
|	멀티 쓰레드
+	포어그라운드 프로세스 그룹


$ ps aux      *# 모든 터미널의 프로세스를 소유자 정보와 함께 프로세스 정보를 출력*
$ ps aux | grep apache         *# 특정 프로세스(apache)만 출력*



$ ps -ef
*# 현재 실행중인 모든 프로세스의 정보를 전체 포맷으로 출력*

$ ps -ef | more
*# 모든 프로세스를 풀 포맷으로 보여준다, more명령어를 줘서 페이지단위로 출력*

$ ps -ef | grep apache
*# 모든 프로세스의 출력값을 grep을 이용하여 apache가 포함된 라인들을 출력*
Foreground로 동작 중인 프로세스를 suspend
ctrl + z
kill [options] [pid]

1	SIGHUP	 터미널에서 접속이 끊겼을때 보내지는 시그널, 변화된 내용을 적용하기 위해 
						재시작 할 때 사용된다. 
2	SIGINT	 인터럽트 시그널로 실행을 중지시킴, Ctrl + c 입력시 보내지는 시그널 
3	SIGQUIT	 실행 중지 시그널로서 Ctrl + \\ 입력시 보내지는 시그널 
9	SIGKILL	 프로세스를 강제로 종료 시키는 시그널 
15	SIGTERM	 kill의 기본 시그널로 정상 종료 시키는 시그널 
18	SIGCONT	 시그널에 의해 정지된 프로세스를 다시 실행시키는 시그널 
19	SIGSTOP	 정지 시그널 
20	SIGTSTP	 일시정지 시키는 시그널로서 Ctrl + z 입력시 보내지는 시그널
at [option]

지정된 시간에 명령어나 프로그램을 실행시키는 명령어입니다.
cron과 다른 점은 「cron」 은 설정한 날짜가 되면 반복적으로 등록된 처리가 실행되지만 
at 명령의 경우는 한 번만 처리가 실행됩니다.
1회성 작업의 경우 「cron」 보다는 「at」를 사용하는 것이 더 편리합니다

-f 파일명	스크립트 파일  등을 실행해 줄때 사용한다
-m	작업이 완료될 때 사용자에게 메일을 보낸다
-M	메일 보내기 않기
-t [[CC]YY]MMDDhhmm[.ss]	[[CC]YY]MMDDhhmm[.ss]로 시간 지정
-l	예약된 작업 목록을 보여준다. 
-r 번호	예약된 작업을 삭제한다.(unix)
-d 번호	예약된 작업을 삭제한다.(linux)
-q	queue 이름을 지정한다
-V	버전확인
nohup

사용자가 로그아웃하거나 터미널창을 닫아도 해당 프로세스를 백그라운드로
 전환하여 계속 작업될 수 있도록 해주는 명령

stty
터미널 설정 (키설정)

tty
가상터미널 생성가능
xinetd 슈퍼데몬
여러 인터넷 서버를 대신해서 메모리에 상주하여 대기하고 있다가 
서비스 요청시 해당 서비스 프로 그램을 구동시켜주는 슈퍼 데몬
nice
프로세스가 실행될때 실행 우선순위 조정
-20 ~ 19까지 순위값 조정가능
일반유저는 값만 증가가능

renice [조정수치] [pid]
실행 중인 프로세스의 우선순위를 조정할
일반유저는 값만 증가가능

'Linux' 카테고리의 다른 글

http -> https 적용법  (0) 2024.10.25
web - dns 서버 연동  (0) 2024.10.25
DNS 서버 세팅  (0) 2024.10.25
rpm tar 명령어 정리  (1) 2024.10.25
file system  (0) 2024.10.25