Skip to content

Latest commit

 

History

History
22 lines (15 loc) · 2.06 KB

Daemon.md

File metadata and controls

22 lines (15 loc) · 2.06 KB

데몬 이란?

데몬이란 리눅스 시스템이 처음 가동될 때 실행되는 백그라운드 프로세스의 일종이며,
사용자의 요청을 기다리고 있다가 요청이 발생하면 이에 적절히 대응하는 리스너와 같은 역할을 한다.
즉, 메모리에 상주하면서 특정 요청이 오면 즉시 대응 할 수 있도록 대기중인 프로세스를 말한다. MS윈도우의 서비스(Service)와 유사하고 실제로 '서비스' 라고 부르기도 하다.
보통 리눅스 시스템의 1번 프로세스인 init(PID=1)이 실행하고, 데몬 프로그램의 명령어는 'd'로 끝난다. (ex. ftpd, mysqld, httpd...)

리눅스 시스템은 주로 서버로서의 역할을 많이 수행하는데 (요즘은 데스크탑으로도 많이 쓴다만...) 가령, ftp서버, 웹서버, DB서버 등의 역할을 하는 시스템이라면, 해당 데몬이 실행중이어야 사용자의 요청을 처리할 수가 있다.

리눅스에서 데몬을 실행하는 방법은 크게 두가지가 있다. standalone 방식과, super daemon을 통하는 방식이 그것인데, 일반적으로 빈번히 사용하는 데몬을 standalone 방식으로, 자주 사용하지 않는 데온을 super daemon방식으로 실행한다.
만약 리눅스 서버를 웹서버로 사용한다면, 사용자의 웹 서비스 요청이 매우 빈번히 일어날 것이고, 따라서 'httpd' 와 같은 웹서버 데몬은 standalone 방식으로 실행한다.

standalone type daemon

  • 독립적으로 수행되며 서비스 요청에 응답하기 위해 항시 메모리에 상주하는 데몬이다.

  • 데몬의 실행 스크립트 위치 : "/etc/inetd.d/"

inetd type daemon

inetd라고 하는 특별한 데몬에 의해 간접적으로 실행되는 데몬이다. 보안상의 이유로 xinetd로 수정되었으며 슈퍼데몬이라고도 한다. inetd에 어떠한 요청이 들어오면 inetd는 해당되는 데몬을 메모리에 올리고 요청을 처리하게 된다.

데몬의 실행 스크립트 파일 : "/etc/xinetd.d/"