> 패키지 및 시스템 관리 > systemd-analyze

systemd-analyze: 시스템 부팅 및 서비스 분석

systemd-analyze는 systemd 기반 시스템의 부팅 시간과 개별 서비스의 시작 시간을 분석하고 디버깅하는 데 사용되는 강력한 도구입니다. 시스템 성능 최적화에 유용합니다.

개요

systemd-analyze는 시스템 부팅 과정의 병목 현상을 식별하고, 각 서비스가 부팅에 기여하는 시간을 측정하여 시스템 관리자가 성능 문제를 진단하고 해결하는 데 도움을 줍니다.

주요 기능

  • 전체 부팅 시간 측정
  • 개별 서비스 및 유닛의 시작 시간 분석
  • 부팅에 가장 큰 영향을 미치는 '핵심 체인' 식별
  • 부팅 과정 시각화 (SVG, DOT 그래프)
  • systemd 유닛 파일 유효성 검사

주요 옵션

systemd-analyze 명령어와 함께 사용되는 주요 옵션들입니다.

부팅 시간 분석

시각화 및 디버깅

생성된 명령어:

명령어를 조합해 보세요.

설명:

`systemd-analyze` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

사용 예시

systemd-analyze 명령어의 다양한 활용 예시입니다.

전체 부팅 시간 확인

systemd-analyze

시스템의 전체 부팅 시간을 확인합니다.

서비스별 부팅 시간 확인

systemd-analyze blame

각 서비스가 부팅에 소요한 시간을 내림차순으로 정렬하여 표시합니다.

부팅 핵심 체인 분석

systemd-analyze critical-chain

부팅 완료에 가장 큰 영향을 미치는 유닛들의 의존성 체인을 확인합니다.

부팅 시간 시각화 (SVG)

systemd-analyze plot > boot.svg

부팅 과정을 SVG 형식의 그래프로 생성하여 'boot.svg' 파일로 저장합니다. 이 파일은 웹 브라우저에서 열어볼 수 있습니다.

유닛 파일 유효성 검사

systemd-analyze verify /etc/systemd/system/my-custom.service

지정된 systemd 유닛 파일의 구문 오류나 잘못된 설정을 검사합니다.

팁 & 주의사항

systemd-analyze 사용 시 유용한 팁과 주의할 점입니다.

Graphviz 설치

plot 또는 dot 옵션을 사용하여 시각화된 그래프를 생성하려면 Graphviz 패키지가 설치되어 있어야 합니다.

  • Debian/Ubuntu: sudo apt install graphviz
  • CentOS/RHEL: sudo yum install graphviz

blame 결과 해석

systemd-analyze blame의 결과는 각 유닛이 '시작하는 데 걸린 시간'을 보여주지만, systemd는 많은 서비스를 병렬로 시작하기 때문에 단순히 가장 긴 시간이 걸린 서비스가 부팅 지연의 원인이라고 단정할 수는 없습니다. critical-chain과 함께 분석하는 것이 더 정확합니다.

부팅 최적화

critical-chain으로 식별된 유닛들을 중심으로 불필요한 의존성을 제거하거나, 서비스 시작 유형(예: on-demand)을 변경하여 부팅 시간을 단축할 수 있습니다.


동일 카테고리 명령어