Linux 프로세스 관리INFRA/Linux2024. 6. 28. 00:09
Table of Contents
프로세스
- 프로그램이나 명령어를 실행했을 때 메모리에 적재되어 실제로 동작하는 상태
- 프로세스가 실행되면 프로세스 식별번호(PID, Process id)를 할당
ps
램에 올라와있는 프로세스 정보 확인
-- -e : 프로세스 전체 목록 출력
-- -f : PID, PPID 정보를 포함하여 출력
[root@localhost ~]# ps -ef | grep firefox
root 10149 6122 0 11:45 pts/0 00:00:00 grep --color=auto firefox
-- 프로그램 실행
[root@localhost ~]# firefox
-- 실행하고 다시 확인했더니 수많은 프로세스가 올라온다
[root@localhost ~]# ps -ef | grep firefox
root 10158 6122 45 11:47 pts/0 00:00:06 /usr/lib64/firefox/firefox
root 10207 10158 0 11:47 pts/0 00:00:00 /usr/lib64/firefox/firefox -contentproc -parentBuildID 20240516183250 -prefsLen 19649 -prefMapSize 233884 -appDir /usr/lib64/firefox/browser {4ca4590f-5b84-4ef8-8318-04a42610f2ec} 10158 socket
root 10288 10158 3 11:47 pts/0 00:00:00 /usr/lib64/firefox/firefox -contentproc -childID 1 -isForBrowser
----생략----
kill
프로세스 관련한 시그널을 운영체제에게 보내는 것
- Signal : 각 메시지마다 프로세스가 수행할 동작이 정의되어 있음
- Signal 종류 확인 : [root@Linux~]# kill - nSIGHUP(1) 프로세스 실행
-- 처음 실행한 파이어폭스창 종료시킴
[root@localhost ~]# kill -15 10158 (== pkill -15 gedit)
--다시 실행시키면 다른 PID가 부여된것 확인할 수 있음
[root@localhost ~]# ps -ef | grep firefox
root 11003 6122 39 12:20 pts/0 00:00:02 /usr/lib64/firefox/firefox
백그라운드(Background)
- 프로세스 실행 중 다른 프로세스를 실행할 수 있는 형태
- & 없이 foreground로 실행시 명령창 반환 안함
jobs
백그라운드로 실행되고 있는 작업번호 목록 확인
[root@localhost ~]# gedit &
[1] 11296
[root@localhost ~]# jobs
[1]+ 실행중 gedit &
fg, bg
백그라운드 ↔ 포어그라운드 전환
[root@localhost ~]# bg 1 -- 1:작업번호
bash: bg: 1: 그러한 job이 없음
[root@localhost ~]# bg 2
bash: bg: job 2는 이미 백그라운드에 있음
crond
- 관리자가 원하는 작업을 예약해 두고 정해진 시간에 주기적으로 반복하여 실행할 수 있음
- crond 라는 데몬이 설치되어 있어야 하며, 대부분의 리눅스는 기본적으로 설치되어 있음
- 주기적인 서버의 백업이나 로그를 관리할 때 유용
- 등록 형식
- cron 실습
[root@localhost ~]# crontab -e
no crontab for root - using an empty one
-- vi 편집기처럼열어서 내용추가
11 * * * * touch /eee
crontab: installing new crontab
--cron 생성
[root@localhost ~]# crontab -l
11 * * * * touch /eee
--데몬 다시 읽음
[root@localhost ~]# systemctl restart crond
--11분에 파일 생성 되었음
[root@localhost ~]# ls /eee
/eee
--매일 2시부터 6시까지 2시간 간격
2-6 2 * * *
--매월 매일 6시간마다 30분이 될 때
/root/backup 디렉터리 하위에 home.tar.gz 이름으로 /home 디렉터리 하위 내용을 압축하여 저장
30 */6 * * * tar zcf /root/backup/home.tar.gz /home
--매일 01시 13시 정각에 rdate 명령을 실행하여 time.bora.net과 시간 동기화
0 1,13 * * * rdate -s time.bora.net
systemctl restart
- 데몬을 재시작하여, 현재 설정된 환경 설정이나 변경 사항을 다시 읽어들임
- 만약 웹 서버의 설정 파일에서 포트 번호를 변경한 후에는 웹 서버 데몬을 재시작해야 변경 사항이 적용된다. 만약 웹 서버를 재시작하지 않으면, 변경된 설정이 반영되지 않아서 여전히 이전의 포트 번호로 작동함.
systemctl staus 데몬명
- 데몬 상태 확인
- 데몬 취소 stop
- restart status stop 현재 램에 있는 것
- disable : 재부팅하면 램에 올리지마
- enable : 재부팅할때마다 램에 올라옴 (웹서버 데몬)
'INFRA > Linux' 카테고리의 다른 글
Linux 디스크 관리 (0) | 2024.06.28 |
---|---|
RAID 구성+복구 실습 -> Window+Linux (1) | 2024.06.27 |
Linux 소유권, 허가권, 특수 권한 (0) | 2024.06.27 |
Linux 계정 관리 (0) | 2024.06.27 |
Linux Software 관리 (0) | 2024.06.27 |