post by WHITEHATS
웹기반 정보보안 엔지니어 과정 160218 12번째강의 - 3
12.프로세스 관리
12.프로세스 관리
•프로세스
- 프로그램이나 명령어를 실행했을 때 메모리에 적재되어 실제로 동작하는 상태
- 프로세스가 실행되면 프로세스 식별번호(PID, Process id)를 할당 받음
- 최상위 프로세스는 항상 init 프로세스
- 나머지 프로세스는 항상 부모 프로세스(PPID, Parent Process ID)를 가짐
- 해당 프로세스를 동작시킨 파일의 uid, gid를 획득하여 소유주 등의 프로세스 실행에 필요한 inode 정보 및 실행된 터미널, 입력된 명령어, 시작 시간 등의 많은 정보보유 함
•프로세스 기본 관리 명령어
- ps
- pstree
- signal
- kill
- pkill
12.프로세스 기본 관리 명령어 (ps)
•용도
- 프로세스의 정보 확인
•사용법
- [root@localhost~]# ps [옵션]
현재 터미널을 통해서 실행되고 있는 것을 보여준다!!
프로세스 전체목록 출력!!~
* tty(0~6) -> 물리적으로 연결된 콘솔 터미널, 총 7개.... 기본적으로 0번하나 쓴다.
* 컨트롤 알트 f2 누르면 CLI 모드로 간다.
* 컨트롤 알트 f1 누르면 GUI 모드로 간다.
* pts : 네트워크를 통해 연결된 논리적인 터미널
지금 현재 내가 사용하고 있는게 pts/0
* tty : 현재 내가 사용하는 터미널의 명칭을 확인할 수 있다.
* who : 현재 사용중인 전체 터미널 목록 확인
-f 를 붙여주면 PPID 의 값까지 포함해서 출력한다.!!
방금 실행한 ps -f 가 -bash 명령어에서 사용했기 때문에 ps -f 의 PPID와 -bash의 PID 값이 같다. (부모-자식 프로세스)
12.프로세스 기본 관리 명령어 (ps)
•출력 정보
- [root@localhost ~]# ps –f
12.프로세스 기본 관리 명령어 (pstree)
•용도
- 프로세스의 상관관계를 계층적으로 확인
•사용법
- [root@localhost ~]# pstree [옵션]
pstree는 기본적으로 이름만 보여준다.
pstree -p를 넣어주면 이름옆에 PID값도 같이 보여준다.
너무 많으니까 grep으로 필터링도 가능하다
pstree -pa 옵션도 사용할 수 있다.
12.프로세스 기본 관리 명령어 (signal)
•용도
- 동작 중인 프로세스에게 전달하는 메시지의 의미를 가짐
- 각 메시지마다 프로세스가 수행할 동작이 정의 되어 있음
•signal 종류 확인
- [root@localhost ~]# kill -l
일반적으로는 -9를 많이 쓴당!!
12.프로세스 기본 관리 명령어 (kill)
•용도
- 프로세스 종료
- PID를 이용하여 종료할 프로세스를 지정 함
•사용법
- [root@localhost ~]# kill [-signal] [PID]
실습 !!
정상종료가 안되는 상황으로 가정 !! 강제종료 시켜줘야 된다!!
전부 다 종료하겠다!
다시 확인해보니 꺼짐 ㅇㅇ..
12.프로세스 기본 관리 명령어 (pkill)
•용도
- 프로세스 종료
- 프로세스의 이름을 이용하여 종료할 프로세스를 지정 함
- 같은 이름으로 동작 중인 프로세스를 동시에 제어할 수 있음
•사용법
- [root@localhost ~]# pkill [-signal] [옵션] [프로세스 이름 또는 패턴]
12.프로세스 우선순위
•프로세스 우선순위
-한번에 여러 개의 프로세스가 동작할 수 있음
-여러 개의 프로세스는 CPU를 사용하기 위해 경쟁 하지만 모든 프로세스가 동일한 동작을 하는 것이 아니므로 공평하게 자원을 배분 받지 못 함
-프로세스의 중요도에 따라 빨리 처리가 되어야 하는 경우 우선순위가 높아짐
-백업, 업데이트, 용량이 큰 프로그램을 다운받을 경우 백그라운드로 동작 시키면서 우선순위를 조정 함
•프로세스 우선순위 값
- -20 ~ 20 (낮을 수록 우선순위가 높음)
- nice, snice 명령어로 관리 함
- priority 값은 변경이 불가능 하며 nice, snice값을 이용하여 시스템이 계산 함)
•프로세스 우선순위 확인
-[root@localhost ~]# ps -el
작은 값일수록 우선순위가 높다!@~
12.프로세스 우선순위 관리 명령어 (nice) -> 프로그램이 동작안해도 미리 우선순위값을 지정한다!!!
•용도
- 프로세스 동작의 우선순위를 설정
- 프로그램을 실행하면 우선순위(nicer값)를 변경
•사용법
- [root@localhost ~]# nice -n [우선순위 값] [프로그램 이름 또는 PID]
vmware 에서 실행
putty에서 사용 ..... vmware에서 실행되고 있는 vi 프로세스를 찾을수 있당!!
test2의 vi가 nice 명령어로 5를 줘서 putty값의 우선순위가 더 느리다...
12.프로세스 우선순위 관리 명령어 (snice) -> 이미 동작중인 프로세스의 우선순위값을 지정한다!!
•용도
- 프로세스 동작의 우선순위를 설정
- 실행중인 프로그램의 우선 순위(nice 값)를 변경
•사용법
- [root@localhost ~]# snice +/- [우선순위 값] [프로그램 이름 또는 PID]
전에 실습 계속 이어서~
현재 실행중인 프로세스의 우선순위 값을 지정할 수 있다!!!
하얀모자 whitehat
'▶ 웹기반 정보보안 과정 > Linux' 카테고리의 다른 글
160220 13번째 강의 - 1 (0) | 2016.02.20 |
---|---|
리눅스(Linux) - Permission 퍼미션 실습 2 (0) | 2016.02.19 |
160218 12번째강의 - 2 (0) | 2016.02.19 |
160218 12번째강의 - 1 (0) | 2016.02.19 |
리눅스(Linux) - Permission 퍼미션 실습 1 (0) | 2016.02.19 |