Solarisの場合
次の例は,Solarisでの例である。
Solarisのsyslog.confは,最初にプリプロセッサm4で処理されるため,「ifdef」という書式が使用されている。「ifdef(LOGHOST, foo, bar)」の場合,LOGHOSTが定義されている際には「foo」,LOGHOSTが定義されていない場合には「bar」が当てはまる。
mail.debug ifdef(`LOGHOST', /var/log/syslog, @loghost) |
上記の例は,「LOGHOST」が定義されている場合にはローカルサーバ上の/var/log/syslogに記録することを意味する。一方,LOGHOSTでない場合には,「loghost」というホストにログを送信する。つまり,LOGHOST が定義されている場合には,次のように解釈されるのだ。
mail.debug /var/log/syslog |
また,LOGHOSTが定義されていない場合には,次のように解釈されてログ配信をすることになる。
mail.debug @loghost |
同じく次のようなifdefによる定義がある場合,LOGHOSTが認識されると空として解釈される。LOGHOSTが定義されていない場合には,userの4行だけが解釈されるのだ。
ifdef(`LOGHOST', , user.err /dev/sysmsg user.err /var/adm/messages user.alert `root, operator' user.emerg *' ) |
このように,syslogによる記録方式は管理者が自由にコントロールすることが可能である。標準設定でもある程度はサービスごとに記録ファイルが分けられているが,自分で見やすいように分類することがシステム管理をしていく上で重要な作業になるだろう。次回の連載5回目では,インターネットサーバを理解する上で最も重要なnamedについて解説していこう。
5/6 |