우분투 실전 명령어 | systemctl 서비스 제어 핵심(start/stop/restart/reload/enable)
언제 쓰는가
서버에서 웹 애플리케이션이나 데이터베이스를 운영하다 보면, 서비스가 내려가거나 설정 반영이 필요한 순간이 자주 생깁니다. 이럴 때 systemctl만 정확히 써도 대부분의 1차 대응이 끝납니다. 특히 재부팅 후 자동 시작 여부까지 한 번에 관리할 때 가장 많이 씁니다.
바로 쓰는 명령어
# 서비스 현재 상태 확인
sudo systemctl status nginx
# 즉시 시작 / 중지 / 재시작
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
# 설정 파일만 다시 읽기
sudo systemctl reload nginx
# 부팅 시 자동 시작 on/off
sudo systemctl enable nginx
sudo systemctl disable nginx
# 부팅 여부와 현재 활성 상태를 짧게 확인
systemctl is-enabled nginx
systemctl is-active nginx
핵심 옵션/패턴
# 최근 로그와 함께 상태를 빠르게 확인
systemctl status nginx --no-pager -l
# 실패한 서비스만 모아서 보기
systemctl --failed
# 서비스 유닛 파일 반영
sudo systemctl daemon-reload
reload는 "무중단 설정 반영"에 가깝고, restart는 프로세스를 다시 띄우는 동작입니다. 설정만 바꿨다면 먼저 reload 가능 여부를 확인하고, 안 되면 restart로 가는 흐름이 안전합니다.
자주 하는 실수
enable만 해두고 지금 당장 서비스가 떠 있을 거라고 착각하는 경우enable은 "다음 부팅부터 자동 시작" 설정입니다. 지금 올리려면start도 해야 합니다.
- 유닛 파일 수정 후
daemon-reload를 빼먹는 경우- 변경 내용이 systemd에 반영되지 않아 이전 설정으로 동작합니다.
reload가 안 되는 서비스인데 무작정 실행하는 경우- 서비스마다 지원 여부가 다릅니다. 실패하면
restart로 전환하세요.
- 서비스마다 지원 여부가 다릅니다. 실패하면
검증 방법
# 1) 현재 실행 상태 확인
systemctl is-active nginx
# 2) 부팅 자동 시작 여부 확인
systemctl is-enabled nginx
# 3) 실패 유닛 유무 점검
systemctl --failed
# 4) 문제 시 상세 상태 + 로그 확인
sudo systemctl status nginx --no-pager -l
sudo journalctl -u nginx -n 50 --no-pager
실행 결과 예시
$ systemctl is-active nginx
active
$ systemctl is-enabled nginx
enabled
$ systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
0 loaded units listed.
$ sudo systemctl restart nginx
$ sudo systemctl status nginx --no-pager -l
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled)
Active: active (running) since Wed 2026-02-18 20:09:41 KST; 3s ago
Docs: man:nginx(8)
Process: 18421 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 18422 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 18423 (nginx)
Tasks: 3 (limit: 18901)
Memory: 5.8M
CPU: 36ms
출처
- Ubuntu Community Help Wiki
- systemd 공식 문서
- NGINX 공식 문서