본문 바로가기
Linux

Process 관리

by Nirah 2022. 11. 9.

<<Process 관리>>


App 실행돼서 메모리에 Load 된 것을 process라고 한다.

한마디로 프로세스는 실행 자체로도 메모리를 사용한다.

하드와 메모리의 관계를 잘 생각해보자.

(메모리를 종료할 때 프로세스에 대해 저장하시겠습니까? 하고 뜨는 이유는

하드에 저장되지 않고 메모리에만 남아있는 상태기 때문이다.)



foreground

 

shell을 점유함.
실행되는 동안 다른 App 실행 불가 (명령어 포함)
ctrl +c 종료 인터럽트 가능
Ctrl + z 정지 -> stop 상태
일반적으로 app을 실행한 상태

 


background

 

SHELL 을 점유하지 않음
process 실행되는 동안 다른 App 실행 가능 (명령어 포함)
ctrl + c로 인터럽트 불가능


실행중인 작업 관리

 

Ctrl + z 정지 -> stop 상태 [1]+ stopped

jobs 목록 다확인
jobs %1      1번작업을 확인

kill $(jobs -p) jobs 목록 전부 삭제
fg %1          포어그라운드로 실행
bg %1         백그라운드로 실행
ps -ef          작업 목록 상세 확인 PID

ps aux        모든 사용자의 실행중인 프로세스 목록 

kill -9 PID   작업 삭제kill -19 PID 작업 중지
kill -18 PID 작업 재실행

kill -l           옵션 보기

 

(부모 프로세스를 죽이면 자식 프로세스도 죽는다. 안죽고 남으면 좀비라고 부르며 주기적으로 제거해 줘야한다.)

( tty 값은 콘솔 접속 목록을 뜻한다.)

 


===========================================================================================


ping 8.8.8.8 로 테스트 해보면 

계속 ICMP를 날리는 중이라 다른 작업을 하기 힘들 것이다.

이것은 foreground에서 실행되는 작업이다.


1. # Ctrl + z 로 정지 해놓고 # jobs 작업 목록에서 확인 가능 (아래와 같이 1번 작업이다.)

또는  # ps -ef 로 실행중인 ping 작업 목록 확인 가능

 


2. # fg %1 상태로 기본 실행 중이라 도중에 # ls -al이 안먹히고 # ctrl +c이 안되지만
3. # bg %1 상태로 전환 후에는 # ls -al 명령어가 가능해 지고 # Ctrl +c가 안먹힌다.
4. bg 상태에서 멈추려면 fg 로 전환 후에 멈추거나 ps -ef를 써서 멈춰야 한다.

(명령어를 치면 올라오는 핑 테스트에 의해 끊기지만 잘 인식 된다.)

 



일전에 팀별 콘솔 접속에서 w 중복으로 접속이 떴던 이슈 해결
1. 콘솔에서 한명이 6번까지 중복 접속 가능.
2. kill -9 PID 명령어를 써서 해당 tty 접속을 끊어주자

 

====================================================================================

 

ctrl + c 로 swap 파일 생성 시 해결법

 

예를 들어 vi 편집기로 설정파일을 편집 중에 강제로  ctrl + c로 종료하게 되면

prossece 목록에 스탑으로 해당 vi 작업이 남게 된다.

이때 다시 vi 편집기로 해당 설정파일을 만지게 되면

vi 창 맨 위에 .swap 으로 된 숨김 파일이 생성됐다는 말이 뜨고 읽기전용으로 열려서 vi 수정이 안된다.

이때 수정이 안된다고 이 vi 명령어를 계속 반복하면 .swaa .swab 등등 파일이 계속 생기고 골치아파진다.

문제 해결은 swap 파일을 찾아가서 지워줘야 하는 것이다.

'Linux' 카테고리의 다른 글

DNS Server  (0) 2022.11.11
FTP (active, passive mode)  (0) 2022.11.09
netstat  (0) 2022.11.09
Rocky 리눅스 설치  (0) 2022.11.08
DHCP -Linux server  (0) 2022.11.08