광고 영역 (상단)

systemd Unit 파일 빌더

서비스/타이머/소켓 유닛 파일을 양식으로 만들고 설치·시작 명령어를 함께 출력합니다.

기본 정보

[Service] 설정

[Install]

파일

설치·관리 명령

광고 영역 (하단)

systemd 유닛 파일이란?

systemd는 거의 모든 현대 리눅스 배포판(우분투, 데비안, CentOS, Rocky 등)의 init 시스템이자 서비스 관리자입니다. 유닛 파일(.service, .timer, .socket 등)에 프로세스의 실행 방식, 의존성, 재시작 정책, 환경 변수를 선언적으로 기술하면 시스템이 자동으로 관리합니다. 본 도구는 가장 자주 쓰이는 세 가지 유닛—Service, Timer, Socket—을 폼으로 만들어 줍니다.

서비스 유닛은 데몬형 프로세스(Node.js·Python 앱·Go 서버 등)에 적합합니다. 타이머는 cron 대체로 정기 작업에 쓰며, 소켓 유닛은 listen 소켓을 systemd가 보유하고 연결 시 서비스를 활성화하는 socket activation 패턴에 사용됩니다.

주요 필드

자주 묻는 질문 (FAQ)

Q. 파일은 어디에 저장하나요?

A. 시스템 전역은 /etc/systemd/system/, 사용자 단위는 ~/.config/systemd/user/입니다. 패키지가 제공하는 기본 유닛은 /lib/systemd/system/에 있지만 직접 수정은 피하고 override를 쓰세요.

Q. 적용 후 변경사항이 반영되지 않습니다.

A. 파일을 수정한 뒤 sudo systemctl daemon-reload를 실행해야 systemd가 새 설정을 읽어들입니다. 그 다음 systemctl restart 서비스명으로 재시작합니다.

Q. Restart=always로 두면 무한 루프에 빠지지 않나요?

A. systemd는 StartLimitBurst/StartLimitIntervalSec로 짧은 시간에 너무 자주 재시작되면 멈춥니다. 기본값은 10초 내 5회입니다. 필요하면 [Unit] 섹션에 두 값을 명시하세요.