OSDN Git Service

Update draft for LDP 3.67
[linuxjm/LDP_man-pages.git] / draft / man2 / syslog.2
index dd3b823..875726b 100644 (file)
@@ -1,5 +1,6 @@
 .\" Copyright (C) 1995 Andries Brouwer (aeb@cwi.nl)
 .\"
+.\" %%%LICENSE_START(VERBATIM)
 .\" Permission is granted to make and distribute verbatim copies of this
 .\" manual provided the copyright notice and this permission notice are
 .\" preserved on all copies.
@@ -19,6 +20,7 @@
 .\"
 .\" Formatted or processed versions of this manual, if unaccompanied by
 .\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
 .\"
 .\" Written 11 June 1995 by Andries Brouwer <aeb@cwi.nl>
 .\" 2008-02-15, Jeremy Kerr <jk@ozlabs.org>
 .\" This file was generated with po4a. Translate the source file.
 .\"
 .\"*******************************************************************
-.TH SYSLOG 2 2011\-09\-07 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 1997 HANATAKA Shinya
+.\"         all rights reserved.
+.\" Translated Mon Dec 16 11:16:34 JST 2001
+.\"         by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
+.\" Updated Thu Mar 6 2003 by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" Updated 2005-09-06, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" Updated 2008-04-04, Akihiro MOTOKI, LDP v2.79
+.\" Updated 2008-07-31, Akihiro MOTOKI, LDP v3.05
+.\" Updated 2012-04-30, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2012-05-29, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-05-06, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH SYSLOG 2 2012\-11\-29 Linux "Linux Programmer's Manual"
 .SH 名前
 syslog, klogctl \- カーネルのメッセージ・リング・バッファを読んだり消去したりする; console_loglevel の設定を行う
 .SH 書式
@@ -50,75 +65,83 @@ syslog, klogctl \- カーネルのメッセージ・リング・バッファを
 \fBsyslog\fP(3) を見ること。この名前のシステム・コールはカーネルの
 \fIprintk\fP() バッファを制御するものであり、glibc ラッパー関数は
 \fBklogctl\fP() と呼ばれている。
-
-\fItype\fP 引き数はこの関数の動作を決定する。以下を指定できる。
-
-.nf
-      0 \-\- ログを閉じる。現在の実装では何もしない (NOP) 。
-      1 \-\- ログを開く。現在の実装では何もしない (NOP) 。
-      2 \-\- ログから読み出す。
-      3 \-\- リング・バッファに残っているメッセージをすべて読み出す。
-      4 \-\- リング・バッファに残っているメッセージをすべて読み出し、消去する。
-      5 \-\- リングバッファを消去する。
-      6 \-\- コンソールへの printk を無効にする。
-      7 \-\- コンソールへの printk を有効にする。
-      8 \-\- コンソールに表示されるメッセージのレベルを設定する。
-      9 \-\- ログバッファの未読の文字数を返す。
-      10 \-\- ログバッファのサイズを返す。
-.fi
-
-type 9 は Linux 2.4.10 で追加された。
-type 10 は Linux 2.6.6 で追加された。
-
-バージョン 2.6.37 より前の Linux カーネルでは、
-コマンド種別 3 と 10 だけが非特権プロセスに対して許可されている。
-Linux 2.6.37 以降では、\fI/proc/sys/kernel/dmesg_restrict\fP が値 0 の場合に
-コマンド種別 3 と 10 だけが非特権プロセスに対して許可される。
-Linux 2.6.37 より前では、「特権を持つ (privileged)」とは呼び出し者が
-\fBCAP_SYS_ADMIN\fP ケーパビリティを持つことを意味する。
-Linux 2.6.37 以降では、「特権を持つ」とは呼び出し者が
-\fBCAP_SYS_ADMIN\fP ケーパビリティか
-(新しい) \fBCAP_SYSLOG\fP ケーパビリティのいずれかを持つことを意味する
-(この目的で \fBCAP_SYS_ADMIN\fP ケーパビリティを使うのは今は非推奨である)。
 .SS "カーネル・ログ・バッファ (kernel log buffer)"
 .\" Under "General setup" ==> "Kernel log buffer size"
 .\" For 2.6, precisely the option seems to have appeared in 2.5.55.
 カーネルは長さ \fBLOG_BUF_LEN\fP の巡回式のバッファを持っており、 それにはカーネル関数の \fBprintk\fP()
 の引き数として与えられた メッセージが (そのログレベルにかかわらず) 格納される。 初期のカーネルでは \fBLOG_BUF_LEN\fP の値は 4096
 であった。 カーネル 1.3.54 からは 8192、 カーネル 2.1.113 からは 16384 になり、 カーネル 2.4.23 以降および
-2.6 以降ではカーネルのコンパイル時に 値を設定できるようになっている。 最近のカーネルでは、コマンド 10 でバッファのサイズを問い合わせできる。
-
-\fIsyslog(2,buf,len)\fP の呼び出しはカーネル・ログ・バッファが空でなくなるまで待って、 最大 \fIlen\fP バイトまで \fIbuf\fP
-へと読み出し、読み込んだ バイト数を返す。ログから読まれたバイトはログ・バッファから消える: 情報は一度しか読むことができない。
+2.6 以降ではカーネル設定オプション (\fBCONFIG_LOG_BUF_SHIFT\fP)
+で値を設定できるようになっている。最近のカーネルでは、コマンド 10 (下記参照) でバッファのサイズを問い合わせできる。
+.SS コマンド
+\fItype\fP 引き数はこの関数が行う動作を決定する。 以下のリストに示す値を \fItype\fP に指定できる。
+シンボル名はカーネルソースで定義されているが、ユーザ空間には公開されていない。 したがって、数字を使うか、名前を自分で定義する必要がある。
+.TP 
+\fBSYSLOG_ACTION_CLOSE\fP (0)
+ログをクローズする。現在のところ NOP である。
+.TP 
+\fBSYSLOG_ACTION_OPEN\fP (1)
+ログをオープンする。現在のところ NOP である。
+.TP 
+\fBSYSLOG_ACTION_READ\fP (2)
+ログを読み出す。 この呼び出しは、 カーネル・ログ・バッファが空でなくなるまで待って、 最大 \fIlen\fP バイトまで \fIbufp\fP
+が指すバッファに読み込み、 読み込んだバイト数を返す。 ログから読まれたバイトはログ・バッファから消える。 つまり、情報は一度しか読むことができない。
 これはユーザーのプログラムが \fI/proc/kmsg\fP を読んだ時にカーネルによって実行される関数でもある。
-
-\fIsyslog(3,buf,len)\fP の呼び出しはログ・バッファの最後の \fIlen\fP バイトを
-(非破壊的に)読み出す、しかし、直近の「リング・バッファ消去」命令 (この命令はバッファを消去するわけではない)
+.TP 
+\fBSYSLOG_ACTION_READ_ALL\fP (3)
+リング・バッファに残っているメッセージをすべて読み出し、 \fIbufp\fP が指すバッファに格納する。 この呼び出しログ・バッファの最後の \fIlen\fP
+バイトを (非破壊的に) 読み出すが、 最後の「リング・バッファ消去」命令 (下記のコマンド 5 参照)
 以降にバッファに書き込まれた情報しか読み出せない。 返り値は読み込んだバイト数である。
-
-\fIsyslog(4,buf,len)\fP 呼び出しは「リング・バッファ消去」命令も実行する以外は 機能 3 と完全に同じである。
-
-\fIsyslog(5,dummy,dummy)\fP 呼び出しは「リング・バッファ消去」命令のみを実行する (呼び出しの書式で、 \fIbuf\fP や
-\fIlen\fP が "dummy" と記載されている場合、その引き数の値が無視されることを表す)。
-
-\fIsyslog(6,dummy,dummy)\fP 呼び出しはコンソールのログレベルを最小に設定し、 コンソールにメッセージが表示されないようにする。
-
-\fIsyslog(7,dummy,dummy)\fP 呼び出しはコンソールのログレベルをデフォルトに設定し、 コンソールにメッセージが表示されるようにする。
-
-\fIsyslog(8,dummy,level)\fP 呼び出しはコンソールのログレベルを \fIlevel\fP に設定する。 \fIlevel\fP は 1 以上 8
-以下の整数でなければならない。 詳細は \fBログレベル (loglevel)\fP の節を参照のこと。
-
-\fIsyslog(9,dummy,dummy)\fP 呼び出しはカーネル・ログバッファにある現在読み出し可能なバイト数を返す。
-
-\fIsyslog(10,dummy,dummy)\fP 呼び出しはカーネル・ログバッファの総量を返す。
+.TP 
+\fBSYSLOG_ACTION_READ_CLEAR\fP (4)
+リング・バッファに残っているメッセージをすべて読み出し、クリアする。 この呼び出しは \fItype\fP 3
+と全く同じことを行い、追加で「リング・バッファ消去」 ("clear ring buffer") コマンドも実行する。
+.TP 
+\fBSYSLOG_ACTION_CLEAR\fP (5)
+「リング・バッファ消去」 (\"clear ring buffer\") コマンドのみを実行する。 引き数 \fIbufp\fP と \fIlen\fP
+は無視される。
+.IP
+このコマンドは実際にリング・バッファをクリアするわけではなく、 コマンド 3 (\fBSYSLOG_ACTION_READ_ALL\fP) と 4
+(\fBSYSLOG_ACTION_READ_CLEAR\fP で返す内容を決定するカーネルの管理変数を設定する。 このコマンドはコマンド 2
+(\fBSYSLOG_ACTION_READ\fP) と 9 (\fBSYSLOG_ACTION_SIZE_UNREAD\fP) には影響を与えない。
+.TP 
+\fBSYSLOG_ACTION_CONSOLE_OFF\fP (6)
+printk のコンソールへの出力を無効にする。 コンソールのログレベルを最小に設定し、 コンソールにメッセージが出力されないようにする。 引き数
+\fIbufp\fP と \fIlen\fP は無視される。
+.TP 
+\fBSYSLOG_ACTION_CONSOLE_ON\fP (7)
+コンソールのログレベルをデフォルトに設定し、 コンソールにメッセージが表示されるようにする。 引き数 \fIbufp\fP と \fIlen\fP は無視される。
+.TP 
+\fBSYSLOG_ACTION_CONSOLE_LEVEL\fP (8)
+コンソールのログレベルを \fIlen\fP で指定された値に設定する。 \fIlen\fP は 1 以上 8 以下の整数でなければならない。 詳細は
+\fBログレベル (loglevel)\fP の節を参照のこと。 引き数 \fIbufp\fP は無視される。
+.TP 
+\fBSYSLOG_ACTION_SIZE_UNREAD\fP (9) (Linux 2.4.10 以降)
+コマンド 2 (\fBSYSLOG_ACTION_READ\fP) でカーネル・ログ・バッファから読み出せるバイト数を返す。 引き数 \fIbufp\fP と
+\fIlen\fP は無視される。
+.TP 
+\fBSYSLOG_ACTION_SIZE_BUFFER\fP (10) (Linux 2.6.6 以降)
+カーネル・ログ・バッファの全体のサイズを返す。 引き数 \fIbufp\fP と \fIlen\fP は無視される。
+.PP
+コマンド種別 3 と 10 以外のコマンドは全て特権が必要である。
+バージョン 2.6.37 より前の Linux カーネルでは、
+コマンド種別 3 と 10 は非特権プロセスも呼び出すことができる。
+Linux 2.6.37 以降では、\fI/proc/sys/kernel/dmesg_restrict\fP が値 0 の場合に限り、
+非特権プロセスはこれらのコマンドを呼び出すことができる。
+Linux 2.6.37 より前では、「特権を持つ (privileged)」とは呼び出し者が
+\fBCAP_SYS_ADMIN\fP ケーパビリティを持つことを意味する。
+Linux 2.6.37 以降では、「特権を持つ」とは呼び出し者が
+\fBCAP_SYS_ADMIN\fP ケーパビリティか
+(新しい) \fBCAP_SYSLOG\fP ケーパビリティのいずれかを持つことを意味する
+(この目的で \fBCAP_SYS_ADMIN\fP ケーパビリティを使うのは今は非推奨である)。
 .SS "ログレベル (loglevel)"
 カーネル・ルーチンの \fBprintk\fP()  は、ログレベルが \fIconsole_loglevel\fP
 変数より小さいときにのみ、コンソールにメッセージを表示する。 \fIconsole_loglevel\fP は最初
 \fBDEFAULT_CONSOLE_LOGLEVEL\fP (7) に設定されるが、起動時にカーネルの コマンド・ライン・オプションに "debug"
 という単語が含まれている場合は 10 に設定され、カーネル・フォールトが発生した場合には 15 に設定される (但し、10 や 15
-という数字に意味はなく、8 と同等である)。 この変数は \fIsyslog(8,dummy,value)\fP.  呼び出しによって設定され、値の範囲は
-1\-8 である。 \fIsyslog(type,dummy,dummy)\fP 呼び出しで \fItype\fP が 6 もしくは 7 の場合、
-console_loglevel は 1 (カーネル・パニックのみ)、 7 (デバッグ・メッセージ以外の全て) にそれぞれ設定される。
+という数字に意味はなく、8 と同等である)。 この変数は \fItype\fP が 8 の \fBsyslog\fP() の呼び出しによって設定され、値の範囲は
+1\-8 である。 \fItype\fP が 6 もしくは 7 の \fBsyslog\fP() の呼び出しの場合、 console_loglevel は 1
+(カーネル・パニックのみ)、 7 (デバッグ・メッセージ以外の全て) にそれぞれ設定される。
 
 メッセージの各行はそれぞれにログレベルを持つ。このログレベルは \fIDEFAULT_MESSAGE_LOGLEVEL \- 1\fP (6) であるが、
 <d> (\fId\fP は 1\-7 の範囲の数字) で始まる行の ログレベルは \fId\fP である。 ログレベルの慣習的な意味は
@@ -136,8 +159,8 @@ console_loglevel は 1 (カーネル・パニックのみ)、 7 (デバッグ・
 .fi
 .SH 返り値
 \fItype\fP が 2, 3, 4 の場合、成功すると \fBsyslog\fP()  は読み出したバイト数を返す。 \fItype\fP が 9 の場合、
\82«ã\83¼ã\83\8dã\83«ã\83»ã\83­ã\82°ã\83\90ã\83\83ã\83\95ã\82¡ã\81«ã\81\82ã\82\8bç\8f¾å\9c¨èª­ã\81¿å\87ºã\81\97å\8f¯è\83½ã\81ªã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82 \fItype\fP ã\81\8c 10 ã\81®å ´å\90\88ã\80\81 ã\82«ã\83¼ã\83\8dã\83«ã\83»ã\83­ã\82°ã\83\90ã\83\83ã\83\95ã\82¡ã\81®ç·\8fé\87\8fã\82\92è¿\94ã\81\99ã\80\82 \fItype\fP
-がそれ以外の値の場合、成功すると 0 が返される。
\82«ã\83¼ã\83\8dã\83«ã\83»ã\83­ã\82°ã\83»ã\83\90ã\83\83ã\83\95ã\82¡ã\81«ã\81\82ã\82\8bç\8f¾å\9c¨èª­ã\81¿å\87ºã\81\97å\8f¯è\83½ã\81ªã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82 \fItype\fP ã\81\8c 10 ã\81®å ´å\90\88ã\80\81 ã\82«ã\83¼ã\83\8dã\83«ã\83»ã\83­ã\82°ã\83»ã\83\90ã\83\83ã\83\95ã\82¡ã\81®ç·\8fé\87\8fã\82\92è¿\94ã\81\99ã\80\82
+\fItype\fP がそれ以外の値の場合、成功すると 0 が返される。
 
 エラーの場合は、\-1\ が返り、 \fIerrno\fP にエラーを示す値が設定される。
 .SH エラー
@@ -160,12 +183,15 @@ console_loglevel は 1 (カーネル・パニックのみ)、 7 (デバッグ・
 .SH 準拠
 このシステム・コールは Linux 特有であり、移植を意図したプログラムでは 使用してはいけない。
 .SH 注意
-かなり初期の頃から、同じ名前を持つシステム・コールと ライブラリ・ルーチンが全く異なる代物であるのは不幸なことだと 気付かれていた。 libc4 と
-libc5 ではこのコールの番号は \fBSYS_klog\fP と定義されていた。 glibc2.0 でこのシステムコールは \fBklogctl\fP()
-という名前に改められた。
+.\" In libc4 and libc5 the number of this call was defined by
+.\" .BR SYS_klog .
+.\" In glibc 2.0 the syscall is baptized
+.\" .BR klogctl ().
+かなり初期の頃から、同じ名前を持つシステムコールとライブラリルーチンが
+全く異なる別物であるのは不幸なことだと指摘されてきた。
 .SH 関連項目
 \fBsyslog\fP(3), \fBcapabilities\fP(7)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.40 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.67 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。