📌 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 계열에서는 rsyslog
와 journald
가 함께 사용됩니다.
🗂️ 로그 저장 위치
파일 경로 |
설명 |
/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 |
로그 검색, 실시간 확인 가능 |
댓글남기기