syslog란 시스템에 로그메시지를 남기고 처리하는 프로그램과 설정 파일을 모두 합쳐서 부르는 말이다.
로그가 발생하면 syslogd라는 데몬이 로그를 받아서 syslog.conf 설정파일에 적혀있는 곳으로 보냄.

솔라리스 시스템에서 발생하는 메시지가 저장되는 곳 : /var/adm/messages
리눅스 시스템에서 발생하는 메시지가 저장되는 곳 : /var/log/messages

리눅스는 특별히 하드웨어에 관련된 에러만 볼 수도 있음 (명령어 dmesg)

# dmesg | grep sd*
위 명령은 SCSI 디스크에 관련된 에러메시지만 보여준다.


■ /etc/syslog.conf
syslogd.conf 설정파일은 selector과 action으로 구성되어 있는데, selector하면(이런 에러가 발생하면) action하라(이렇게 조치하라) 는 뜻으로 해석하면 된다.

selector는 facility.level
action은 file, operator, console, remote system

selector와 action은 반드시 탭(Tab)으로 구분해야 함.
file로 전송시 반드시 해당 파일이 존재해야 함.

syslog.conf 설정파일을 수정했으면 반드시 syslog 데몬을 재시작해야 함.
# /etc/init.d/syslog stop
# /etc/init.d/syslog start

○ facility와 level
 facility  description  level  description
 kern  kernel에서 생성  emerg  Panic condition
 user  user process가 생성  alert  system database error 등
 mail  mail system  crit  hard device error 등
 daemon  system daemon  err  other errors
 auto  login, su 등  warning  warning messages
 syslog  syslogd  notice  error condition이 아닌것
 lpr  printer spooling system  info  information messages
 cron  cron, at, crontab  debug  Debugging program 사용시
 local0-7  reserved  none  메시지 제외시 사용
 mark  Time-stamp message  *  모든 사용자
 *  mark를 제외한 모든 것    




■ syslog를 사용하도록 inetd 수정 방법

vi /etc/init.d/inetsvc 스크립트를 열어 맨 마지막 줄에 /usr/sbin/inetd -s -t & 라고 수정
  ↓ 
vi /etc/default/inetd 파일을 열어 ENABLE_CONNECTION_LOGGING 를 YES로 수정
  ↓
/etc/init.d/inetsvc 스크립트 재시작 (stop => start)



● logger
syslogd 데몬에게 메시지를 전송하는 명령어

logger {-i} {-f file} {-p priority} {-t tag} {message}
Posted by 겨울섬
,