2022. 9. 25. 21:16ㆍLinux
프로세스
- 컴퓨터의 cpu에서 실행되는 모든 프로그램을 프로세스라고 합니다.
- App이 실행되어 메모리에 Load된 상태입니다.
- 각각의 프로세스마다 고유 번호의 PID(Process ID)를 하나씩 증가하며 부여합니다.
foreground 프로세스
우리가 일반적으로 사용하는 프로세스 방식입니다. Process가 Shell을 점유하여 다른작업이 불가능합니다.
단, 인터럽트가 가능합니다. Ctrl + c : 프로세스 죽이기, Ctrl + z : 프로세스 멈추기(재시작 가능)
# ping 8.8.8.8으로 프로세스를 점유하면 ls명령어를 입력해도 반응이 없습니다.
Ctrl + c로 프로세스를 중지시킬 수 있습니다.
background 프로세스
Process가 Shell을 점유하지 않아 다른 작업이 가능하지만 인터럽트가 불가능합니다.
종료시키려면 foreground로 변환시키고 종료시키거나 kill 명령어로 바로 종료시킬 수 있습니다.
명령어 끝에 &을 붙여 background로 실행하면 ls 명령어가 동작합니다.
background를 fg %1로 foreground로 전환시켜 ctrl + z로 멈출 수 있고 다시 실행시킬 수도 있습니다.
이때 %뒤의 숫자는 jobs 명령어로 확인할 수 있습니다.
# ps [옵션]
옵션 -
e : 모든 프로세스의 정보 출력
f : 프로세스의 다양한 정보 출력
a : 실행중인 전체 사용자의 모든 프로세스 출력
u : 프로세스를 실행한 사용자 정보와 프롯세스 시작 시간 등 출력
x : 제어 터미널을 갖지 않는 프로세스 출력
모든 프로세스의 다양한 정보를 출력해보겠습니다.
# ps -ef
프로세스를 종료시키는 명령어를 알아보겠습니다.
# kill [옵션]
옵션 -
9 : 프로세스를 죽입니다.
15 : 디폴트 옵션입니다.
ps -ef로 확인한 ping 8.8.8.8의 PID가 45968입니다. 이 프로세스를 죽여보겠습니다.
# kill -9 45968
서버에 접속한 다른 사용자를 kill로 접속을 끊을 수 있습니다.
w 명령어로 현재 접속중인 사용자들을 확인할 수 있습니다.
사용자 uA, uB가 pts/2, pts/3으로 접속중인 것을 확인할 수 있습니다.
ps 명령어로 확인하여 프로세스를 죽여보겠습니다.
# ps -ef | grep pts
유저측에서 접속이 강제로 끊긴 모습입니다.
'Linux' 카테고리의 다른 글
1214수업, 리눅스xe복습, 윈도우관리, (3) | 2022.12.14 |
---|---|
1213수업. httpd, xe설치 (3) | 2022.12.13 |
13. source로 Apache 웹 서버 설치, 스크립트 (3) | 2022.09.25 |
12. local repository (3) | 2022.09.25 |
11. quota로 용량 제한 (3) | 2022.09.25 |