--- title: systemd-analyze — 부팅·서비스 분석 date: 2026-10-18 time: 12:00 model: admin category: programs author_type: human summary: systemd 부팅 시간과 서비스 시작 순서·의존성을 분석·시각화합니다. tags: 프로그램, 서비스 및 프로세스 관리, systemd-analyze --- **💬 "systemd-analyze 명령어"** systemd-analyze는 **부팅·서비스 분석** systemd 부팅 시간과 서비스 시작 순서·의존성을 분석·시각화합니다. 부팅 소요 시간을 측정합니다 (firmware→userspace). 서비스별 시작 소요 시간 순위(blame)를 제공합니다. - **개념**: 부팅 소요 시간을 측정합니다 (firmware→userspace). - **주요 기능**: 서비스별 시작 소요 시간 순위(blame)를 제공합니다. - **장점**: 의존성 그래프를 SVG로 시각화합니다. - **활용**: critical-chain으로 병목을 추적합니다. ## 설치 및 다운로드 systemd-analyze는 패키지 매니저 또는 공식 스크립트로 설치합니다. | 환경 | 명령 | | --- | --- | | systemd 내장 | systemd-analyze | | 부팅 시간 확인 | systemd-analyze | | 서비스 순위 | systemd-analyze blame | | 그래프 출력 | systemd-analyze plot > boot.svg | | 확인 | systemd-analyze --version | 설치 확인은 `systemd-analyze --version`으로 합니다. ## 자주 쓰는 옵션 | 옵션 | 설명 | | --- | --- | | systemd-analyze | 전체 부팅 시간 | | systemd-analyze blame | 서비스별 소요 시간 순위 | | systemd-analyze critical-chain | 의존성 병목 체인 | | systemd-analyze plot > boot.svg | 부팅 시각화 SVG | | systemd-analyze time | kernel→init→userspace 분해 | ## 필수 명령어 조합 3가지 - `systemd-analyze critical-chain` — 가장 느린 의존성 체인 추적 - `systemd-analyze blame | head -10` — 상위 10개 느린 서비스 - `systemd-analyze plot > boot.svg` — 전체 시각화 **💬 "실제 서버에서 systemd-analyze를 사용하는 예시를 보여줘"** 실제 운영 중인 서버에서 자주 만나는 상황을 순서대로 정리했습니다. ### 1단계 · 부팅 시간 확인 전체 부팅 시간을 확인합니다. ``` systemd-analyze ``` ### 2단계 · 느린 서비스 상위 5개 느린 서비스를 확인합니다. ``` systemd-analyze blame | head -5 ``` ### 3단계 · 병목 추적 의존성 병목을 추적합니다. ``` systemd-analyze critical-chain ``` ## 실제 실행 화면 systemd-analyze로 부팅 시간과 blame을 확인한 결과입니다. ![systemd-analyze 명령어 실행 결과](https://games.cursorai.co.kr/assets/systemd-analyze-demo.png) 실제 운영 중인 서버 ## 실무에서는 이렇게 씁니다 ### 1. 부팅 병목 추적 **상황** — 부팅이 느린 원인을 찾습니다. ``` systemd-analyze critical-chain ``` **결과** — NetworkManager-wait-online이 1.4초를 소비하는 것이 보입니다. **포인트** — 의존성 체인을 따라가면 병목 서비스가 나옵니다. ### 2. 서비스 순위 확인 **상황** — 가장 느린 서비스를 확인합니다. ``` systemd-analyze blame | head -5 ``` **결과** — nginx, postgresql, docker 순으로 느립니다. **포인트** — blame 시간은 서비스 실행 시간만 측정합니다. ## 실제 실행 화면 systemd-analyze critical-chain으로 병목을 추적한 결과입니다. ![systemd-analyze 명령어 실행 결과 2](https://games.cursorai.co.kr/assets/systemd-analyze-demo2.png) 실제 운영 중인 서버 ## 주의할 점 - plot 명령은 SVG를 생성합니다. 서버에서는 scp로 내려받아 봅니다. - blame 시간은 서비스 실행 시간만 측정합니다. 의존성 대기 시간은 critical-chain에서 봅니다. - 부팅 시간은 하드웨어·인스턴스 유형에 따라 달라집니다. 같은 인스턴스에서 비교합니다. --- 원문(HTML): https://games.cursorai.co.kr/programs/linux/services/systemd-analyze.html