1 분 소요

📌 1. systemd란?

systemd는 현대 리눅스 배포판에서 사용하는 init 시스템입니다. 부팅 시 프로세스와 서비스의 초기화를 담당하며, 기존 SysVinit 시스템을 대체합니다.

🔹 주요 특징

  • 병렬 서비스 시작 (부팅 속도 향상)
  • unit 파일 기반의 구성
  • 서비스 상태 관리 (active, failed 등)
  • 로그 수집 통합 (journald)

📂 systemd 주요 구성요소

요소 설명
systemctl systemd 제어 명령어
journalctl 로그 확인 도구
unit 서비스 단위 설정 파일 (.service, .socket, .target 등)
/etc/systemd/system/ 사용자 정의 유닛 파일 위치
/run/systemd/system/ 실행 중 생성된 유닛 파일 위치
/usr/lib/systemd/system/ 기본 유닛 파일 위치

🧪 자주 사용하는 systemctl 명령어

# 서비스 시작/중지/재시작
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx

# 서비스 활성화/비활성화 (부팅 시 자동 시작 여부)
sudo systemctl enable nginx
sudo systemctl disable nginx

# 서비스 상태 확인
systemctl status nginx

# 모든 서비스 확인
systemctl list-units --type=service

📝 Unit 파일 기본 구조 (예: nginx.service)

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
ExecStart=/usr/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Type=forking

[Install]
WantedBy=multi-user.target

📌 2. 리눅스 로그 관리

리눅스 시스템의 로그는 보안, 트러블슈팅, 모니터링에서 매우 중요합니다. RHEL 계열에서는 rsyslogjournald가 함께 사용됩니다.


🗂️ 로그 저장 위치

파일 경로 설명
/var/log/messages 시스템 전반 로그
/var/log/secure 인증 관련 로그
/var/log/cron 크론 작업 로그
/var/log/dmesg 커널 부팅 메시지
/var/log/httpd/ Apache 로그
/var/log/audit/ SELinux 및 보안 감사 로그 (auditd)

🔍 로그 확인 명령어

# 실시간 로그 확인
tail -f /var/log/messages

# 특정 로그 검색
grep "error" /var/log/messages

# 전체 로그 구조 보기
ls /var/log/

🧾 rsyslog vs journald

항목 rsyslog journald
로그 파일 저장 O (/var/log/*) O (/run/log/journal 등)
포맷 텍스트 기반 바이너리 포맷
필터링 기능 O O (journalctl 사용)
네트워크 전송 O 제한적
구성 파일 /etc/rsyslog.conf /etc/systemd/journald.conf

🧪 journalctl 실습 예시

# 전체 로그 출력
journalctl

# 부팅 이후 로그
journalctl -b

# 특정 서비스 로그
journalctl -u nginx.service

# 최근 로그 N줄
journalctl -n 50

# 실시간 로그 모니터링
journalctl -f

📌 로그 관리 팁

  • 디스크 용량 부족 방지를 위해 로그 로테이션(logrotate) 설정을 주기적으로 확인
  • 로그 무결성 및 중앙 로그 서버 연동 시 rsyslog 또는 auditd 설정 병행
  • SELinux 활성화 시 /var/log/audit/audit.log 확인 필수

✅ 마무리 정리

항목 핵심 요약
systemd 서비스 관리 및 부팅 제어 시스템
systemctl 서비스 상태, 실행, 자동 시작 설정 도구
rsyslog 전통적인 로그 파일 기록 시스템
journald systemd 기반 로그 수집 도구
journalctl 로그 검색, 실시간 확인 가능

댓글남기기