Daemon
Daemon은 특정 사용자의 session에 종속되지 않고, system level에서 독립적으로 실행되며, 요청이나 event를 대기하는 background process 입니다.
사용자의 직접적인 제어 없이 자동으로 실행되며, 보통 시스템 시작 시 함께 구동됩니다.
terminal이나 UI와 연결되지 않은 채로 동작하고, 특정 event나 요청을 기다리며 대기합니다.
Daemon의 예시
- httpd / nginx
- sshd
- cron
- mysqld
일반 프로그램과의 차이
- 일반 프로그램: 사용자가 실행 -> 작업 수행 -> 종료
- daemon: system 시작 -> background 대기 -> 요청 있을때마다 응답 (system 종료시까지 계속 실행)
이름의 유래
Unix 개발자들이 그리스 신화의 다이몬(?) 에서 따왔다고 함.
다이몬은 인간계와 신계 사이에서 조용히 중재하는 존재로, 눈에 보이지 않게 일하는 daemon의 특성과 잘 맞아떨어진다고 함..
Linux 에서 daemon 확인
# 실행 중인 daemon 목록 확인
systemctl list-units --type=service --state=running

# 특정 데몬 상태 확인
systemctl status sshd
