<<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 |