💬 용어정의
Deadmon = 유령
- 항상 실행되고있다
- ls, mkdir, rm 등: 필요에 따라 키고 끄는 프로그램
- Server 등: 항상 켜져있는 프로그램(Daemon)
- 사용자가 WebPage(Naver, Daum 등)에 접근하는 것
💬 Daemon 실습
1️⃣ Rinux 환경 준비
2️⃣ Apache WebServer 설치
sudo apt-get install apache2
cd /etc/init.d/ # 설치 프로그램 확인을 위한 경로 이동
/etc/init.d$ ls # Demon 프로그램들이 존재하는 디렉토리
3️⃣ Apache 실행
sudo service apache2 start # apache2 실행
ps aux # 현재 실행되고 있는 프로그램의 리스트 출력
ps aux | grep apache2 # 현재 실행되고 있는 프로그램 중 apache2 검색
- 실행되는지 확인 결과, apache2 프로세스들을 볼 수 있다
4️⃣ Apache 중단
sudo service apache2 stop
ps aux | grep apache2 #확인해보면
- 중단되었는지 확인 결과, stop이란 명령어를 프로세스로 잡은 것 이외의 apache2 프로세스는 존재하지 않는다
5️⃣ 요약
- Deamon에 해당되는 프로그램들은 service라는 명령어로 start/strop을 제어한다
- 일반적인 프로그램은 평소처럼 실행시키고 중단하면 된다
💬 컴퓨터 부팅시 Daemon이 자동 실행하게 하기
1️⃣ 디렉토리 이동
cd .. # 현재경로: /etc/init.d
cd r # 상황에 따라 cd rc.d 일수도 있다
cd rc3.d # 운영체제에 대해 CLI구동 => rc3.d, GUI구동 => rc5.d
cd ls -l #
2️⃣ cd ls -l 에 대한 출력문 분석
예시 출력문
...... 07:23 **S02apach2** -> ../init.d/apache2
- ../init.d/apache2 경로에 있는 것을 S02apach2라는 이름으로 부른다(바로가기)
S02apach2에서 ‘S’의 의미
- S02apache2 이름에 해당되는 이 프로그램은, rc3.d 디렉토리에 있다면 console을 통해 CLI로 로그인하여 부팅된 컴퓨터가 실행될 때 해당 프로그램이 자동으로 실행된다
S02apach2에서 ‘02’의미
- 우선순위가 02번째이다
K02apach2라면? (’K’)
- K는 시작하지 않는다는 의미다.
3️⃣ Daemon을 Link로 제어하기
# 현재경로: /etc/rc3.d
# 실행시키고 싶은 프로그램의 링크를 걸면 됨
./S02apache2 #실제로는 내부에 S02apache2가 없으나, 바로가기처럼 읽음
💬 요약
1️⃣ 프로그램 제어하기
service … stop/start
2️⃣ Daemon을 Link로 제어하기(부팅시 자동시작)
/etc/rc3.d/S02apache2