OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man2 / syslog.2
index 8a2dd6c..2bbc7be 100644 (file)
 .\" 2008-02-15, Michael Kerrisk <mtk.manpages@gmail.com>
 .\"     Update LOG_BUF_LEN details; update RETURN VALUE section.
 .\"
-.\" 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
+.\"*******************************************************************
 .\"
-.\"WORD:       kernel                  カーネル
-.\"WORD:       message ring buffer     メッセージ・リング・バッファ
-.\"WORD:       library                 ライブラリ
-.\"WORD:       kernel log buffer       カーネル・ログ・バッファ
-.\"WORD:       console                 コンソール
-.\"WORD:       kernel panic            カーネル・パニック
-.\"WORD:       loglevel                ログレベル
-.\"WORD:       debug message           デバッグ・メッセージ
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.TH SYSLOG 2  2008-06-20 "Linux" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH SYSLOG 2 2011\-09\-07 Linux "Linux Programmer's Manual"
 .SH 名前
-syslog, klogctl \- カーネルのメッセージ・リング・バッファを読んだり消去したりする;
-console_loglevel の設定を行う
+syslog, klogctl \- カーネルのメッセージ・リング・バッファを読んだり消去したりする; console_loglevel の設定を行う
 .SH 書式
 .nf
-.BI "int syslog(int " type ", char *" bufp ", int " len );
-.B  "                /* glibc ではラッパー関数は提供されていない */"
+\fBint syslog(int \fP\fItype\fP\fB, char *\fP\fIbufp\fP\fB, int \fP\fIlen\fP\fB);\fP
+\fB/* glibc ではラッパー関数は提供されていない */\fP
 .sp
 /* glibc のインタフェース */
 .br
-.B "#include <sys/klog.h>"
+\fB#include <sys/klog.h>\fP
 .sp
-.BI "int klogctl(int " type ", char *" bufp ", int " len );
+\fBint klogctl(int \fP\fItype\fP\fB, char *\fP\fIbufp\fP\fB, int \fP\fIlen\fP\fB);\fP
 .fi
 .SH 説明
-.RB ( syslogd (8)
-と話す) C ライブラリ関数の
-.BR syslog ()
-が必要な場合は、
-.BR syslog (3)
-を見ること。
-この名前のシステム・コールはカーネルの
-.IR printk ()
-バッファを制御するものであり、glibc では
-.BR klogctl ()
-と呼ばれている。
+(\fBsyslogd\fP(8) と話す) C ライブラリ関数の \fBsyslog\fP() が必要な場合は、
+\fBsyslog\fP(3) を見ること。この名前のシステム・コールはカーネルの
+\fIprintk\fP() バッファを制御するものであり、glibc ラッパー関数は
+\fBklogctl\fP() と呼ばれている。
 
-\fItype\fP 引き数はこの関数の動作を決定する。
+\fItype\fP 引き数はこの関数の動作を決定する。以下を指定できる。
 
-.I kernel/printk.c
-からの引用 :
 .nf
-/*
- * Commands to sys_syslog:
- *
- *      0 \-\- ログを閉じる。現在の実装では何もしない (NOP) 。
- *      1 \-\- ログを開く。現在の実装では何もしない (NOP) 。
- *      2 \-\- ログから読み出す。
- *      3 \-\- リング・バッファに残っているメッセージをすべて読み出す。
- *      4 \-\- リング・バッファに残っているメッセージをすべて読み出し、消去する。
- *      5 \-\- リングバッファを消去する。
- *      6 \-\- コンソールへの printk を無効にする。
- *      7 \-\- コンソールへの printk を有効にする。
- *      8 \-\- コンソールに表示されるメッセージのレベルを設定する。
- *      9 \-\- ログバッファの未読の文字数を返す。
- *      10 \-\- ログバッファのサイズを返す。
- */
+      0 \-\- ログを閉じる。現在の実装では何もしない (NOP) 。
+      1 \-\- ログを開く。現在の実装では何もしない (NOP) 。
+      2 \-\- ログから読み出す。
+      3 \-\- リング・バッファに残っているメッセージをすべて読み出す。
+      4 \-\- リング・バッファに残っているメッセージをすべて読み出し、消去する。
+      5 \-\- リングバッファを消去する。
+      6 \-\- コンソールへの printk を無効にする。
+      7 \-\- コンソールへの printk を有効にする。
+      8 \-\- コンソールに表示されるメッセージのレベルを設定する。
+      9 \-\- ログバッファの未読の文字数を返す。
+      10 \-\- ログバッファのサイズを返す。
 .fi
 
-非特権プロセスにはコマンド 3 と 10 のみが許可されている
-(コマンド 9 は Linux 2.4.10 で、コマンド 10 は Linux 2.6.6 で追加された)。
-.SS カーネル・ログ・バッファ (kernel log buffer)
-カーネルは長さ
-.B LOG_BUF_LEN
-の巡回式のバッファを持っており、
-それにはカーネル関数の
-.BR printk ()
-の引き数として与えられた
-メッセージが (そのログレベルにかかわらず) 格納される。
-初期のカーネルでは
-.B LOG_BUF_LEN
-の値は 4096 であった。
-カーネル 1.3.54 からは 8192、
-カーネル 2.1.113 からは 16384 になり、
-カーネル 2.4.23 以降および 2.6 以降ではカーネルのコンパイル時に
-値を設定できるようになっている。
+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.
-最近のカーネルでは、コマンド 10 でバッファのサイズを問い合わせできる。
+カーネルは長さ \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 でバッファのサイズを問い合わせできる。
 
-.I "syslog(2,buf,len)"
-の呼び出しはカーネル・ログ・バッファが空でなくなるまで待って、
-最大 \fIlen\fP バイトまで \fIbuf\fP へと読み出し、読み込んだ
-バイト数を返す。ログから読まれたバイトはログ・バッファから消える:
-情報は一度しか読むことができない。
-これはユーザーのプログラムが
-.I /proc/kmsg
-を読んだ時にカーネルによって実行される関数でもある。
+\fIsyslog(2,buf,len)\fP の呼び出しはカーネル・ログ・バッファが空でなくなるまで待って、 最大 \fIlen\fP バイトまで \fIbuf\fP
+へと読み出し、読み込んだ バイト数を返す。ログから読まれたバイトはログ・バッファから消える: 情報は一度しか読むことができない。
+これはユーザーのプログラムが \fI/proc/kmsg\fP を読んだ時にカーネルによって実行される関数でもある。
 
-.I syslog(3,buf,len)
-の呼び出しはログ・バッファの最後の \fIlen\fP バイトを
-(非破壊的に)読み出す、しかし、直近の「リング・バッファ消去」命令
-(この命令はバッファを消去するわけではない)
-以降にバッファに書き込まれた情報しか読み出せない。
-返り値は読み込んだバイト数である。
+\fIsyslog(3,buf,len)\fP の呼び出しはログ・バッファの最後の \fIlen\fP バイトを
+(非破壊的に)読み出す、しかし、直近の「リング・バッファ消去」命令 (この命令はバッファを消去するわけではない)
+以降にバッファに書き込まれた情報しか読み出せない。 返り値は読み込んだバイト数である。
 
-.I syslog(4,buf,len)
-呼び出しは「リング・バッファ消去」命令も実行する以外は
-機能 3 と完全に同じである。
+\fIsyslog(4,buf,len)\fP 呼び出しは「リング・バッファ消去」命令も実行する以外は 機能 3 と完全に同じである。
 
-.I syslog(5,dummy,dummy)
-呼び出しは「リング・バッファ消去」命令のみを実行する
-(呼び出しの書式で、
-.I buf
-や
-.I len
-が "dummy" と記載されている場合、その引き数の値が無視されることを表す)。
+\fIsyslog(5,dummy,dummy)\fP 呼び出しは「リング・バッファ消去」命令のみを実行する (呼び出しの書式で、 \fIbuf\fP や
+\fIlen\fP が "dummy" と記載されている場合、その引き数の値が無視されることを表す)。
 
-.I syslog(6,dummy,dummy)
-呼び出しはコンソールのログレベルを最小に設定し、
-コンソールにメッセージが表示されないようにする。
+\fIsyslog(6,dummy,dummy)\fP 呼び出しはコンソールのログレベルを最小に設定し、 コンソールにメッセージが表示されないようにする。
 
-.I syslog(7,dummy,dummy)
-呼び出しはコンソールのログレベルをデフォルトに設定し、
-コンソールにメッセージが表示されるようにする。
+\fIsyslog(7,dummy,dummy)\fP 呼び出しはコンソールのログレベルをデフォルトに設定し、 コンソールにメッセージが表示されるようにする。
 
-.I syslog(8,dummy,level)
-呼び出しはコンソールのログレベルを
-.I level
-に設定する。
-.I level
-は 1 以上 8 以下の整数でなければならない。
-詳細は
-.B ログレベル (loglevel)
-の節を参照のこと。
+\fIsyslog(8,dummy,level)\fP 呼び出しはコンソールのログレベルを \fIlevel\fP に設定する。 \fIlevel\fP は 1 以上 8
+以下の整数でなければならない。 詳細は \fBログレベル (loglevel)\fP の節を参照のこと。
 
-.I syslog(9,dummy,dummy)
-呼び出しはカーネル・ログバッファにある現在読み出し可能なバイト数を返す。
+\fIsyslog(9,dummy,dummy)\fP 呼び出しはカーネル・ログバッファにある現在読み出し可能なバイト数を返す。
 
-.I syslog(10,dummy,dummy)
-呼び出しはカーネル・ログバッファの総量を返す。
-.SS ログレベル (loglevel)
-カーネル・ルーチンの
-.BR printk ()
-は、ログレベルが
-.I console_loglevel
-変数より小さいときにのみ、コンソールにメッセージを表示する。
-.I console_loglevel
-は最初
-.B DEFAULT_CONSOLE_LOGLEVEL
-(7) に設定されるが、起動時にカーネルの
-コマンド・ライン・オプションに "debug" という単語が含まれている場合は
-10 に設定され、カーネル・フォールトが発生した場合には 15 に設定される
-(但し、10 や 15 という数字に意味はなく、8 と同等である)。
-この変数は
-.IR syslog(8,dummy,value) .
-呼び出しによって設定され、値の範囲は 1-8 である。
-.I syslog(type,dummy,dummy)
-呼び出しで \fItype\fP が 6 もしくは 7 の場合、
-console_loglevel は 1 (カーネル・パニックのみ)、
-7 (デバッグ・メッセージ以外の全て) にそれぞれ設定される。
+\fIsyslog(10,dummy,dummy)\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 (デバッグ・メッセージ以外の全て) にそれぞれ設定される。
 
-メッセージの各行はそれぞれにログレベルを持つ。このログレベルは
-.I "DEFAULT_MESSAGE_LOGLEVEL \- 1"
-(6) であるが、 <d> (\fId\fP は 1-7 の範囲の数字) で始まる行の
-ログレベルは \fId\fP である。
-ログレベルの慣習的な意味は
-.I <linux/kernel.h>
-に以下のように定義されている:
+メッセージの各行はそれぞれにログレベルを持つ。このログレベルは \fIDEFAULT_MESSAGE_LOGLEVEL \- 1\fP (6) であるが、
+<d> (\fId\fP は 1\-7 の範囲の数字) で始まる行の ログレベルは \fId\fP である。 ログレベルの慣習的な意味は
+\fI<linux/kernel.h>\fP に以下のように定義されている:
 
 .nf
 #define KERN_EMERG    "<0>"  /* システムが使用不能                */
@@ -206,63 +135,33 @@ console_loglevel は 1 (カーネル・パニックのみ)、
 #define KERN_DEBUG    "<7>"  /* デバッグレベルの情報        */
 .fi
 .SH 返り値
-\fItype\fP が 2, 3, 4 の場合、成功すると
-.BR syslog ()
-は読み出したバイト数を返す。
-\fItype\fP が 9 の場合、
-カーネル・ログバッファにある現在読み出し可能なバイト数を返す。
-\fItype\fP が 10 の場合、
-カーネル・ログバッファの総量を返す。
-\fItype\fP がそれ以外の値の場合、成功すると 0 が返される。
+\fItype\fP が 2, 3, 4 の場合、成功すると \fBsyslog\fP()  は読み出したバイト数を返す。 \fItype\fP が 9 の場合、
+カーネル・ログバッファにある現在読み出し可能なバイト数を返す。 \fItype\fP が 10 の場合、 カーネル・ログバッファの総量を返す。 \fItype\fP
+がそれ以外の値の場合、成功すると 0 が返される。
 
-エラーの場合は、\-1\ が返り、
-\fIerrno\fP にエラーを示す値が設定される。
+エラーの場合は、\-1\ が返り、 \fIerrno\fP にエラーを示す値が設定される。
 .SH エラー
-.TP
-.B EINVAL
-不正な引き数
-(具体的には、
-.I type
-が正しくない、もしくは
-.I type
-が 2, 3, 4 の場合に
-.I buf
-が NULL か
-.I len
-が 0 未満である、もしくは
-.I type
-が 8 の場合に
-.I level
-が 1 以上 8 以下の範囲に入っていない)。
-.TP
-.B ENOSYS
-カーネルの設定オプション
-.BR CONFIG_PRINTK
-を無効にしてカーネルがコンパイルされているため、
-.BR syslog ()
+.TP 
+\fBEINVAL\fP
+不正な引き数 (具体的には、 \fItype\fP が正しくない、もしくは \fItype\fP が 2, 3, 4 の場合に \fIbuf\fP が NULL か
+\fIlen\fP が 0 未満である、もしくは \fItype\fP が 8 の場合に \fIlevel\fP が 1 以上 8 以下の範囲に入っていない)。
+.TP 
+\fBENOSYS\fP
+カーネルの設定オプション \fBCONFIG_PRINTK\fP を無効にしてカーネルがコンパイルされているため、 \fBsyslog\fP()
 システムコールが利用できない。
-.TP
-.B EPERM
-十分な権限を持たないプロセス (正確には
-.B CAP_SYS_ADMIN
-ケーパビリティを持たないプロセス) が console_loglevelを変更しようとしたか、
+.TP 
+\fBEPERM\fP
+十分な権限を持たないプロセス (正確にはケーパビリティ \fBCAP_SYS_ADMIN\fP も
+\fBCAP_SYSLOG\fP も持たないプロセス) が console_loglevel を変更しようとしたか、
 カーネル・メッセージ・リングを消去しようとした。
-.TP
-.B ERESTARTSYS
-システム・コールがシグナルによって割り込まれ、何も読み出せなかった。
-(トレース中にしか発生することはない)
+.TP 
+\fBERESTARTSYS\fP
+システム・コールがシグナルによって割り込まれ、何も読み出せなかった。 (トレース中にしか発生することはない)
 .SH 準拠
-このシステム・コールは Linux 特有であり、移植を意図したプログラムでは
-使用してはいけない。
+このシステム・コールは Linux 特有であり、移植を意図したプログラムでは 使用してはいけない。
 .SH 注意
-かなり初期の頃から、同じ名前を持つシステム・コールと
-ライブラリ・ルーチンが全く異なる代物であるのは不幸なことだと
-気付かれていた。
-libc4 と libc5 ではこのコールの番号は
-.B SYS_klog
-と定義されていた。
-glibc2.0 でこのシステムコールは
-.BR klogctl ()
+かなり初期の頃から、同じ名前を持つシステム・コールと ライブラリ・ルーチンが全く異なる代物であるのは不幸なことだと 気付かれていた。 libc4 と
+libc5 ではこのコールの番号は \fBSYS_klog\fP と定義されていた。 glibc2.0 でこのシステムコールは \fBklogctl\fP()
 という名前に改められた。
 .SH 関連項目
-.BR syslog (3)
+\fBsyslog\fP(3), \fBcapabilities\fP(7)