Linux 시스템 로그에 대한 명령, 파일 및 관리 도구

Linux 시스템 로그에 대한 명령, 파일 및 관리 도구
발표일자: 2013-01-05
찾아보기(24)
설명(0)
전편
다음 편
문서 목록
[숨기기]
logrotate 명령
logrotate 명령 예제logrotate 명령 매개변수
syslog로 로그 기록
로그 수준시스템 공통 중요 로그logger 명령
로그 파일은 Linux 시스템에서 없어서는 안 될 부분이다. 로그 파일은 시간의 추이에 따라 점점 커지기 때문에 교체라고 불리는 기술을 사용하여 로그의 부피를 제한해야 한다. 제한된 크기를 초과하면 로그 파일의 내용을 추출하고 로그 파일의 옛 항목을 압축 파일에 저장하여 나중에 조회할 수 있도록 해야 한다.
logrotate 명령
logrotate 명령은 로그 파일 관리 도구로 로그 파일의 크기를 지정한 범위 내에 제한할 수 있으며 각종 응용 프로그램은 정보를 로그 파일에 추가합니다. 최근에 추가된 정보는 항상 로그 파일의 끝에 저장됩니다. logrotate는 설정 파일에 따라 특정한 로그 파일을 스캔합니다.
logrotate의 구성 디렉토리는/etc/logrotate에 있습니다.d/, 이 디렉터리에는 다른 프로그램의 로그 파일 설정이 포함되어 있습니다. 열면 발견할 수 있습니다.
logrotate 명령 예
[예] 로그 파일 구성을 만들려면 다음과 같이 하십시오.
cat /etc/logrotate.d/test
/var/log/test.log {
    missingok
    notifempty
    size 30k
    commpress
    weekly
    rotate 5
    create 0600 root root
}

이상은 모든 설정입니다. 그중/var/log/test.log는 로그 파일 경로를 지정하고 오래된 로그 파일을 압축한 후에도 같은 디렉터리에 두며 매개 변수는 다음과 같이 설명합니다.
  • missingok 로그 파일을 잃어버리면 무시하고 돌아갑니다(로그 파일을 교체하지 않음).
  • notifempty는 원본 로그 파일이 비어 있지 않을 때만 교체합니다.
  • size 30k는 교체를 실시하는 로그 파일의 크기를 1M으로 표시할 수 있다.
  • commpressgzip으로 오래된 로그를 압축할 수 있습니다.
  • weekly는 교체를 하는 시간 간격을 지정하는데 weekly,yearly,daily가 될 수 있다.
  • rotate 5에 저장해야 할 로그 압축 파일 수량은 여기 5입니다. 압축된 파일 이름은test입니다.log.1.gz、test.log.2.gz....
  • create 0600 root root 만들려는 아카이브의 모드, 사용자, 사용자 그룹을 지정합니다.

  • logrotate 명령 매개 변수
    매개 변수
    기능
    compress
    gzip을 통해 저장된 로그를 압축합니다.
    nocompress
    압축이 필요 없을 때 이 파라미터를 사용하세요.
    copytruncate
    현재 로그를 백업하고 끊는 데 사용되는 로그 파일입니다.
    nocopytruncate
    로그 파일을 백업하지만 끊지 않습니다.
    create mode owner group
    파일을 덤프하고 지정한 파일 모드를 사용하여 새 로그 파일을 만듭니다.
    nocreate
    새 로그 파일을 만들지 않습니다.
    delaycompress 및 compress
    함께 사용할 때 덤프된 로그 파일은 다음 덤프에서 압축됩니다.
    nodelaycompress
    delaycompress 옵션을 덮어쓰고 덤프와 동시에 압축합니다.
    errors address
    덤프 시 오류 메시지가 지정된 Email 주소로 전송됩니다.
    ifempty
    빈 파일이라도 저장합니다. 이것은logrotate의 부족한 옵션입니다.
    notifempty
    빈 파일이면 덤프하지 않습니다.
    mail address
    덤프된 로그 파일을 지정한 이메일 주소로 보냅니다.
    nomail
    덤프할 때 로그 파일을 보내지 않습니다.
    olddir directory
    저장된 로그 파일을 지정한 디렉터리에 넣고 현재 로그 파일과 같은 파일 시스템에 있어야 합니다.
    noolddir
    덤프된 로그 파일과 현재 로그 파일은 같은 디렉터리에 있습니다.
    prerotate/endscript
    덤프하기 전에 실행해야 할 명령을 이 쌍에 넣을 수 있습니다. 이 두 키워드는 따로 줄을 만들어야 합니다.
    postrotate/endscript
    덤프 후에 실행해야 할 명령을 이 쌍에 넣을 수 있습니다. 이 두 키워드는 따로 줄을 만들어야 합니다.
    daily
    덤프 주기를 매일로 지정합니다.
    weekly
    덤프 주기를 주별로 지정합니다.
    monthly
    덤프 주기를 매월로 지정합니다.
    rotate count
    로그 파일이 삭제되기 전에 저장된 횟수를 지정합니다. 0은 백업이 없고 5는 5개의 백업을 보존합니다.
    tabootext [+] list
    logrotate에서 지정한 확장자를 저장하지 않는 파일을 저장합니다. 기본 확장자는 다음과 같습니다.rpm-orig, .rpmsave, v, 그리고 ~.
    크기 기능
    로그 파일이 지정한 크기에 도달했을 때만 저장됩니다. 크기는bytes (기본값) 와 KB (sizek) 또는 MB (sizem) 를 지정할 수 있습니다.
    syslog로 로그 기록
    로그 파일은 시스템의 고장을 추정하는 데 도움이 되기 때문에 시스템 관리에서 로그를 잘 분석하고 스크립트, 프로그램을 작성할 때 프로그램 실행 과정을 로그 파일에 기록해야 한다.syslog 로그 구성 파일 위치: /etc/syslog.conf로그 수준
    로그의 레벨은 7레벨로 나뉘는데 긴급도가 가장 높습니다.
  • emerg 시스템을 사용할 수 없습니다. 긴급합니다.
  • alert 경고를 즉시 처리하고 해결해야 합니다.
  • crit는 발생할 것이니 예방이 필요하면 사건이 발생할 것이다.
  • warnig경고.
  • err 오류 정보, 일반적인 오류 정보.
  • notice 알림 정보, 중요한 정보.
  • info통지정보는 일반정보에 속한다.
  • debug디버깅 정보입니다.

  • 시스템 공통 중요 로그
  • /var/log/boot.log 시스템 부트 사건은 바로 전원 켜기 자체 검사 과정 정보이다.
  • /var/log/messages에 내부 핵 가동 정보를 발표한다.
  • /var/log/audit/audit.log 사용자 인증 로그.
  • /var/log/dmesg 시스템 부팅 정보.
  • /var/log/cron 이 로그 파일은crontab 수호 프로세스crond에서 파생된 하위 프로세스의 동작을 기록합니다.
  • /var/log/maillog는 시스템에 보내거나 시스템에서 보낸 메일을 기록했다.
  • /var/log/xferlog FTP 세션 로그는 사용자가 FTP 서버나 서버에서 어떤 파일을 복사했는지 기록합니다.
  • /var/log/kernlog 커널 메시지, 기본적으로 켜지지 않았습니다./etc/syslog.conf 파일에서 열어야 합니다.
  • /var/log/Xorg.0.log X-Window 서비스 로그

  • 사용자 로그인 상태
  • /var/log/lastlog는 최근 성공적인 로그인 이벤트와 마지막 로그인 실패 이벤트를 기록하고login에서 생성합니다.
  • /var/log/wtmp는 모든 사용자의 로그인, 로그아웃 및 시스템의 시작, 정지 사건을 영구적으로 기록한다.
  • /var/run/utmp 현재 로그인한 사용자 정보입니다.사용자 로그인 로그아웃이 변경됨에 따라 당시 온라인 상태였던 사용자 기록만 보존하고 영구적으로 보존하지 않습니다.

  • logger 명령/var/log에서 로그 정보를 만들고 쓰는 것은syslog 프로토콜로 처리되며 수호 프로세스sylogd가 수행합니다.모든 표준 프로세스는syslog로 로그를 기록할 수 있습니다.logger 명령을 사용하여 syslogd를 통해 로그를 기록할 수 있습니다.
    [예] syslog 파일/var/log/messages에 로그 정보를 기록하려면 다음과 같이 하십시오.
    logger this is a test log line
    
      :
    tail -n 1 messages
    Jan  5 10:07:03 localhost root: this is a test log line

    특정 태그(tag)를 기록하는 경우 다음을 사용할 수 있습니다.
    logger -t TAG this is a test log line
    
      :
    tail -n 1 messages
    Jan  5 10:37:14 localhost TAG: this is a test log line

    좋은 웹페이지 즐겨찾기