Enterprise Infrastructure Intelligence ● Certified engineers online · Fast response guaranteed
리눅스/OS

systemd 서비스 유닛 파일 작성 가이드

내가 만든 스크립트를 서버 재부팅해도 자동으로 실행되게 하고 싶다면 systemd 유닛 파일을 직접 작성하는 법을 알아야 합니다.

2026.08.19  ·  31회  · 

유닛 파일이란

systemd가 관리하는 프로세스(서비스)의 실행 방법·의존성·재시작 정책 등을 정의한 설정 파일입니다. .service 확장자를 가지며 /etc/systemd/system/에 둡니다.

기본 구조

# /etc/systemd/system/myapp.service
[Unit]
Description=My Application
After=network.target

[Service]
ExecStart=/usr/bin/node /opt/myapp/server.js
Restart=on-failure
User=myapp

[Install]
WantedBy=multi-user.target

섹션별 역할

  • [Unit]: 설명, 다른 유닛과의 순서/의존 관계 (After, Requires)
  • [Service]: 실행 명령, 재시작 정책, 실행 계정 — 서비스 타입 유닛에 필수
  • [Install]: 부팅 시 자동 시작 대상 지정

등록 및 실행

systemctl daemon-reload      # 변경된 유닛 파일 반영
systemctl enable myapp       # 부팅 시 자동 시작 등록
systemctl start myapp        # 즉시 실행
systemctl status myapp       # 상태 확인

재시작 정책 팁

Restart=on-failure로 설정하면 프로세스가 비정상 종료됐을 때만 자동 재시작되고, 정상 종료(systemctl stop)에는 재시작하지 않습니다.

WIKIDATA WORKSTATION
AI·렌더링에 최적화된
전문가용 워크스테이션
NVIDIA RTX GPU · 최대 192GB 메모리 · ECC 지원