syslog.conf 설정하기
### syslog
- syslogd 데몬 프로세스와 /etc/syslog.conf 파일과 더불어 시스템에 로그 메시지를 남기고 처리하는 프로그램과 설정 파일을 합쳐서 부르는 말
- syslog 와 관련된 파일
/usr/sbin/syslogd --> syslog 데몬
/etc/syslog.conf --> syslog 데몬 설정 파일
/etc/syslog.pid --> syslog 데몬 PID
/etc/init.d/syslog --> syslog 데몬 실행 스크립트
/usr/bin/logger --> syslog 를 테스트 할때 사용
/usr/include/syslog.h ---> syslog source code
514 UDP port --> syslog는 514 포트를 사용 ( /etc/services 파일)
- syslog의 실행단계
시스템 부팅 ---> /etc/syslog.conf 파일 읽음 (m4 명령) ---> /etc/syslog.pid 에 기록 --> syslog.conf 에 정의된 대루 기록 --> cron에 의해 반복 수행
# syslogd demon
1. 시스템에서 발생하는 오류 메시지를 구별하고, 각각의 오류 메시지에 따라서 처리 방법을 결정하는 역할을 담당
2. /etc/rc2.d/S74syslog 스크립트에 의해 /etc/syslog.conf 파일을 참조하여 실행
3. /var 디렉토리 밑에 있는 여러 하위 디렉토리에 나누어서 보관
- /var/adm/aculog : tip 명령어에 대한 기록
- /var/adm/lastlog : 사용자들의 마지막 로그인 기록
- /var/adm/messages : 시스템에서 발생하는 대부분의 로그 기록
- /var/adm/sulog : su 명령의 실행 내력을 기록
- /var/adm/vold.log : vold 데몬 프로세스에 의해 생성된 오류 메시지나 디버깅 메시지
- /var/adm/utmpx : who, last 명령에 참조되는 사용자의 모든 로그인과 로그아웃에 정보 기록
- /var/adm/wtmpx : who 명령에 참조되는 사용자의 모든 로그인과 로그아웃에 정보 기록
- /var/cron/log : cron, at 명령어의 실행 내력 기록
- /var/log/authlog : 사용자 인증 내력을 기록
- /var/log/syslog : 전자 우편에 대한 기록
-/var/log/xferlog : ftp 서비스를 제공하는 프로그램에서 내력을 기록
4. /var/adm/messages, /var/log/syslog
- root 사용자의 crontab 파일에 의해서 생성, 관리
- /usr/lib/newsyslog : 8 이하 버전
- /usr/sbin/logadm : 9 버전, /etc/logadm.conf 참조
# /etc/syslog.conf
1. m4 명령어에 의해서 /etc/syslog.conf 파일이 처리된 후 결과를 syslogd 데몬 프로세스가 참조
2. 크게 selector와 action 필드로 나누어진다.
- 시설.중요도[;시설.중요도] <하나 이상의 탭> 행동
3. 시설
- auth : 사용자 인증을 하는 프로그램 ( 예 login , su , getty )
- cron : cron, at 멸영어로 만든 스케쥴링 작업
- daemon : 데몬 프로세스
- localhost0-7 : 임의로 지정하는 시설
- lpr : 프린터라인 스플링 시스템 ( 예 lpr , lpc )
- kern : 커널이나 커널 모듈에 의해 발생되는 메세지
- mail : 메일 관련되 프로그램
- mark : syslogd에 의해 20분 마다 만들어진 Timestamp 메세지
- news : Usenet new에 관련된 프로그램
- user : user processes 에 의해 발생 하는 메세지
- UUCP : UUCP에 관련되 프로그램
- * : mark를 제외한 나머지 모든 시설
4. 중요도
- emerg : 갑작스런 시스템 panic으로 인한 메세지. 모든 사용자에게 메세지를 뿌린다.
- alert : 데이타베이스같은 시스템 문제를 즉시 정정할필요 있을시
- crit : 하드디바이스같이 잘못된 장치의 문제 있을시
- err : 에러들
- warning : warning 메세지
- notice : 주의,주시
- debug : debug 프로그램을 사용시 나오는 메세지
- info : informational 메세지
- none
- emerg > alert > crit > err > warning > notice > debug
- *.err;kern.debug;daemon.notice;mail.crit /var/adm/messages
: 모든 에러와 커널 디버그 메세지, 데몬 주시 메세지, 메일 장치 메세지 등에 관한 메세지를
/var/adm/messages에 출력
5. 행동
- filename : 명시한 파일에 기록, 파일이 없다면 메시지를 남기지 않음.
- @hostname or @ipaddr : 명시된 시스템에 전달, 단 로그를 만든 시설이 mark 일 경우는 제외
- user1, user2, ... : 명시된 사용자가 시스템에 로그인한 경우 사용자들이 로그인한 터미널에 메시지를 출력
- * : 현재 시스템에서 사용자들이 로그인한 터미널에 메시지를 출력
6. ifdef(`조건`, 참, 거짓)
- m4 명령어에서 처리하여 현재 시스템의 설정에 따라서 처리
- LOGHOST 정의 하나만 사용
- LOGHOST 정의가 있으면 참에 ifdef 문장 전체가 참으로 명시한 내용으로 치환
: /etc/hosts 파일에서 loghost로 정의된 시스템의 IP 주소를 현재 시스템의 IP 주소와 비교하여 두 주소가 동일할 경우 LOGHOST 정의가 있는 상태로 m4 명령어를 실행
: # m4 /etc/syslog.conf
- LOGHOST 정의가 없으면 ifdef 문장 전체가 거짓으로 명시한 내용으로 치환
: /etc/hosts 파일에서 loghost로 정의된 시스템의 IP 주소를 현재 시스템의 IP 주소와 비교하여 두 주소가 다를 경우 LOGHOST 정의가 없는 상태로 m4 명령어를 실행
: # m4 /etc/syslog.conf
'::: OS ::: > Linux' 카테고리의 다른 글
umask 퍼미션 테이블 (0) | 2013.03.18 |
---|---|
아파치(Apache) 웹서버 동시접속자수 알아내기 (0) | 2012.05.21 |
RedHat Linux rsyslog 설정 (0) | 2012.05.17 |
RPM 설치 및 삭제 (0) | 2012.05.07 |
yum 사용법 (0) | 2011.11.17 |