• Home
  • About
    • 박혜원의 블로그 :) photo

      박혜원의 블로그 :)

      통계, R 또는 Python 프로그래밍에 대하여 글을 쓰는 블로그

    • Learn More
    • Email
    • LinkedIn
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

시스템 서비스 관리 (systemctl, 데몬, 소켓)

31 Mar 2026

시스템 서비스 관리 (systemctl, 데몬, 소켓)

systemctl 명령어

  • systemd 기반 리눅스에서 서비스(Unit)를 제어하는 명령어

주요 명령어

# 상태 확인
systemctl status [서비스명]

# 시작 / 정지 / 재시작
systemctl start [서비스명]
systemctl stop [서비스명]
systemctl restart [서비스명]

# 부팅 시 자동 실행 / 해제
systemctl enable [서비스명]
systemctl disable [서비스명]

# 실행 중인 유닛 목록 보기 (active 상태)
systemctl list-units --type=service

# 전체 서비스 (enable/disable 포함)
systemctl list-unit-files --type=service

데몬 (Daemon)

  • 백그라운드에서 실행되는 서비스 프로세스
  • 일반적으로 시스템 부팅 시 자동 실행됨
  • 예시: sshd, crond, firewalld, vsftpd

데몬 실행 방식

Standalone 방식

  • 데몬이 항상 메모리에 상주하며 요청을 직접 처리
  • 빠른 응답 가능

xinetd 기반 방식

  • xinetd가 요청을 감시하다가 필요 시 데몬 실행
  • 메모리 효율은 좋지만 약간 느릴 수 있음
  • 현재는 거의 사용되지 않으며, systemd socket activation으로 대체됨

소켓 (Socket)

  • 네트워크 통신의 엔드포인트
  • systemd에서는 .socket 유닛으로 관리

특징

  • 요청이 들어올 때만 서비스 실행 (On-demand)
  • systemd의 socket activation 기능

소켓 제어 예시

  • 주의: 확장자를 생략하면 .service가 기본 적용됨
systemctl start telnet.socket
systemctl enable telnet.socket

telnet 서버 예시

# 설치
yum install -y telnet-server

# 소켓 활성화
systemctl start telnet.socket

# 자동 실행 설정
systemctl enable telnet.socket

# 방화벽 설정
firewall-cmd --add-service=telnet --permanent
firewall-cmd --reload

서비스 vs 소켓 비교

항목 서비스(.service) 소켓(.socket)
실행 시점 시작 시 바로 실행 요청 시 실행
메모리 사용 항상 상주 필요할 때만 실행 → 절약
성능 빠름 최초 요청 시 지연 가능
역할 실제 데몬 실행 트리거 역할 (리스닝)
대표 구조 traditional daemon systemd socket activation


Linux Share Tweet +1