[CS/운영체제] 소프트웨어 설치 및 관리 - 5부

황제연·2025년 6월 1일
0

CS학습

목록 보기
92/193
post-thumbnail

시스템 로그 개요

시스템에서 일어나는 모든 이벤트 등은 각 서비스별로 기록되는데, 이 기록을 로그라고 합니다
로그 분석은 시스템을 관리하거나 보안을 유지하는데 중요한 역할을 수행하므로
잘 관리하고 있어야 합니다

과거 리눅스는 로그 기록과 관련된 패키지로 syslog라는 패키지를 사용했습니다
syslogd라는 데몬이 /etc/syslog.conf설정 파일을 기반으로 서비스별 로그파일을
/var/log 디렉토리에 생성했습니다

현재 리눅스는 rsyslog패키지로 대체되었습니다

rsyslog (rocket-fast system for log processing)

개요

rsyslog는 기존 syslog와 유사하게 rsyslogd 데몬이 /etc/rsyslog.conf설정 파일을 기반으로
서비스별 로그 파일을 /var/log 디렉토리에 생성합니다

rsyslog는 syslog의 성능을 강화한 패키지로 멀티스레드 지원, TCP 지원 등 다양한 기능을 제공합니다

/etc/rsyslog.conf 파일 기본 구성 형식

facility.priority action

rsyslog는 다양한 모듈을 제공하고 있습니다
제공하는 모듈은 크게 om(output module)으로 시작하는 출력 모듈과
im(input module)으로 시작하는 입력 모듈로 나눌 수 있습니다

logrotate

로그 파일은 계속 쌓이는 형태라 파일의 크기도 계속 커집니다
이를 방지하기 위해 로그 파일을 여러개로 분할해주는 프로그램이 logrotate입니다

logrotate는 로그파일의 자동 로테이션 기능, 압축기능, 제거 등을 지원합니다
각 로그 파일은 하루 ~ 연 단위로 로테이션할 수 있고, 파일의 크기를 지정할 수도 있습니다

시스템과 관련된 기본적인 로그 설정은 /etc/logrotate.conf에서 제어하고
응용 프로그램은 /etc/logrotate.d 디렉토리 내에 위치해서 로그 파일을 관리하고 있습니다

명령행에서 logrotate를 직접 사용가능하지만 현재는 /etc/cron.daily 디렉토리에 등록되어서
cron에 의해 스케줄링 되어 실행되고 있습니다

사용법

logrotate [option] config_file

참고

  • CentOS 7로 이해하는 리눅스 관리 및 시스템 보안 - 도서
profile
Software Developer

0개의 댓글