[로그 관리]
리눅스에서는 시스템이 운영되는 전반적인 사항을 로그파일에 기록하게 된다.
이 로그파일을 분석하여 시스템의 문제를 분석하고 해결할 수 있다.
01. 주요 로그 파일
기본적으로 로그 파일은 /var/log 라는 디렉토리에 위치한다. 물론 다른 곳에 위치하는 로그 파일들도 있다.
로그를 확인하려면 간단히 vi 편집기나 cat 명령어 등을 이용하여 파일의 내용을 확인하면 된다.
※ 주요 로그 파일을 알아보자.
(01) /var/log/maillog
메일과 관련된 로그를 기록한다. 이 파일을 이용하여 어떤 메일들이 오고 가는지 확인할 수 있고, 메일이 오고간 시간, 호스트, 데몬, 유저, 크기 등을 확인할 수 있다.
다음은 maillog 파일의 내용중 일부이다.
(02) /var/log/messages
메일, 뉴스 등을 제외하고 전체적인 로그를 기록하는 파일이다.
(03) /var/log/secure
유저에 대한 접속을 기록한다.
(04) /var/log/lastlog
계정 사용자들이 마지막으로 로그인한 정보를 기록한다.
기록된 사항들은 lastlog 명령어를 사용하여 확인할 수 있다.
(05) /var/log/boot.log
부팅시 서비스 데몬들의 실행 상태를 기록하는 파일이다.
(06) /var/log/dmesg
시스템이 부팅할 때 출력되는 메시지들이 기록된다. dmesg 명령어로도 확인할 수 있다.
(07) /var/log/cron
cron과 관련된 메시지들이 저장된다. 이 파일을 통해 예약한 작업이 정상적으로 실행되고 있는지 확인할 수 있다.
(08) /var/log/wtmp
사용자들이 접속한 정보를 기록한다. 로그의 확인은 # last 명령어를 이용하여 확인할 수 있다.
쉘프롬프트에 last를 입력하면 전체 접속 정보를 확인할 수 있다.
특정 사용자의 정보를 확인하려면 # last 사용자명 하면 된다.
위 reboot 는 사용자명이다.
아래 doom 사용자명으로 검색을 해보니 아무것도 나타나지 않았다.
[root@localhost log]# last doom
wtmp begins Mon Nov 3 17:00:19 2008
즉, last 명령어를 치는 순간 /var/log/wtmp 파일을 참조하여 화면에 출력하는데
doom 계정은 접속한 기록이 없기 때문에 나타나지 않은 것이다.
◆ 만약 root 사용자명의 최근 접속 정보를 5개만 출력하려면 아래와 같이 하면 된다.
[root@localhost log]# last -n 5 root
root pts/1 192.168.133.1 Fri Nov 14 14:42 still logged in
root pts/1 192.168.133.1 Fri Nov 14 03:07 - down (00:00)
root pts/1 192.168.133.1 Fri Nov 14 02:56 - down (00:04)
root :0 Fri Nov 14 02:56 - down (00:04)
root :0 Fri Nov 14 02:56 - 02:56 (00:00)
wtmp begins Mon Nov 3 17:00:19 2008
(09) /var/log/xferlog
FTP 서버의 데이터 전송관련 로그를 기록한다. 이 파일을 이용하면 불법 파일이 전송되었는지 여부를 확인할 수 있으며, 전송 상황을 모니터링 할 수 있다.
(10) /var/log/anaconda.log
우리는 CentOS 설치시 아나콘다 라는 실행 프로그램에 대해서 공부를 하였다.
그 설치 프로그램인 아나콘다 프로그램도 로그에 기록이 된다.
◆ 로그 관리를 위한 프로그램은 syslog와 logrotate에 대해서는 후에 공부하도록 하자.
Linux/Commands Part