.\"
.TH CORE 5 2010-11-15 "Linux" "Linux Programmer's Manual"
.\"O .SH NAME
-.SH ̾Á°
+.SH 名前
.\"O core \- core dump file
-core \- ¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë
+core \- コアダンプファイル
.\"O .SH DESCRIPTION
-.SH ÀâÌÀ
+.SH 説明
.\"O The default action of certain signals is to cause a process to terminate
.\"O and produce a
.\"O .IR "core dump file" ,
.\"O to inspect the state of the program at the time that it terminated.
.\"O A list of the signals which cause a process to dump core can be found in
.\"O .BR signal (7).
-¤¢¤ë¼ï¤Î¥·¥°¥Ê¥ë¤ò¼õ¤±¤¿¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥¢¥¯¥·¥ç¥ó¤Ï¡¢
-¥×¥í¥»¥¹¤ò½ªÎ»¤· (terminate)¡¢
-.I "¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë (core dump file)"
-¤òÀ¸À®¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ç¥£¥¹¥¯¾å¤ËÀ¸À®¤µ¤ì¤ë
-½ªÎ»»þ¤Î¥×¥í¥»¥¹¤Î¥á¥â¥ê¥¤¥á¡¼¥¸¤òÆâÍƤȤ¹¤ë¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¡£
-¤³¤Î¥¤¥á¡¼¥¸¤ò¥Ç¥Ð¥Ã¥¬ (Î㤨¤Ð
+ある種のシグナルを受けた場合のデフォルトのアクションは、
+プロセスを終了し (terminate)、
+.I "コアダンプファイル (core dump file)"
+を生成することである。コアダンプファイルは、ディスク上に生成される
+終了時のプロセスのメモリイメージを内容とするファイルである。
+このイメージをデバッガ (例えば
.BR gdb (1))
-¤ËÆɤ߹þ¤ó¤Ç¡¢
-¥×¥í¥°¥é¥à¤¬½ªÎ»¤·¤¿»þÅÀ¤Î¥×¥í¥°¥é¥à¤Î¾õÂÖ¤ò¸¡ºº¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
-¤É¤Î¥·¥°¥Ê¥ë¤ò¼õ¤±¤¿¤È¤¤Ë¥×¥í¥»¥¹¤¬¥³¥¢¥À¥ó¥×¤òÀ¸À®¤¹¤ë¤«¤Î¥ê¥¹¥È¤Ï
+に読み込んで、
+プログラムが終了した時点のプログラムの状態を検査することができる。
+どのシグナルを受けたときにプロセスがコアダンプを生成するかのリストは
.BR signal (7)
-¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¡£
+に書かれている。
.\"O A process can set its soft
.\"O .B RLIMIT_CORE
.\"O that will be produced if it receives a "core dump" signal; see
.\"O .BR getrlimit (2)
.\"O for details.
-¥×¥í¥»¥¹¤Ï¥½¥Õ¥È¡¦¥ê¥½¡¼¥¹À©¸Â
+プロセスはソフト・リソース制限
.B RLIMIT_CORE
-¤òÀßÄꤹ¤ë¤³¤È¤Ç¡¢¡Ö¥³¥¢¥À¥ó¥×¡×¥·¥°¥Ê¥ë¤ò¼õ¿®¤·¤¿ºÝ¤ËÀ¸À®¤µ¤ì¤ë
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Ë¾å¸Â¤ò²Ý¤¹¤³¤È¤¬¤Ç¤¤ë¡£¾ÜºÙ¤Ï
+を設定することで、「コアダンプ」シグナルを受信した際に生成される
+コアダンプファイルのサイズに上限を課すことができる。詳細は
.BR getrlimit (2)
-¤ò»²¾È¡£
+を参照。
.\"O There are various circumstances in which a core dump file is
.\"O not produced:
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤¤¾õ¶·¤¬¤¤¤¯¤Ä¤«¤¢¤ë:
+コアダンプファイルが生成されない状況がいくつかある:
.IP * 3
.\"O The process does not have permission to write the core file.
.\"O (By default the core file is called
.\"O is not writable
.\"O or is not a regular file
.\"O (e.g., it is a directory or a symbolic link).
-¥×¥í¥»¥¹¤¬¥³¥¢¥Õ¥¡¥¤¥ë¤ò½ñ¤¹þ¤àµö²Ä¤ò»ý¤¿¤Ê¤¤¾ì¹ç
-(¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥¢¥Õ¥¡¥¤¥ë¤Ï
+プロセスがコアファイルを書き込む許可を持たない場合
+(デフォルトでは、コアファイルは
.I core
-¤È¤¤¤¦Ì¾Á°¤Ç¡¢¥«¥ì¥ó¥È¡¦¥ï¡¼¥¥ó¥°¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÀ¸À®¤µ¤ì¤ë¡£
-̿̾µ¬Â§¤Î¾ÜºÙ¤Ï²¼µ¤ò»²¾È)¡£
-¥³¥¢¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤è¤¦¤È¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤¬½ñ¤¹þ¤ß²Äǽ¤Ç¤Ê¤¤¾ì¹ç¡¢
-¤â¤·¤¯¤ÏƱ¤¸Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬½ñ¤¹þ¤ß²Äǽ¤Ç¤â
-Ä̾ï¤Î¥Õ¥¡¥¤¥ë¤Ç¤â¤Ê¤¤¾ì¹ç (Î㤨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê¤ä¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯)¡¢
-¥³¥¢¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤Ï¼ºÇÔ¤¹¤ë¡£
+という名前で、カレント・ワーキング・ディレクトリに生成される。
+命名規則の詳細は下記を参照)。
+コアファイルを生成しようとしたディレクトリが書き込み可能でない場合、
+もしくは同じ名前のファイルが存在し、そのファイルが書き込み可能でも
+通常のファイルでもない場合 (例えば、ディレクトリやシンボリックリンク)、
+コアファイルの生成は失敗する。
.IP *
.\"O A (writable, regular) file with the same name as would be used for the
.\"O core dump already exists, but there is more than one hard link to that
.\"O file.
-¥³¥¢¥À¥ó¥×¤Ë»È¤ª¤¦¤È¤·¤¿¤Î¤ÈƱ¤¸Ì¾Á°¤Î (½ñ¤¹þ¤ß²Äǽ¤Ê¡¢Ä̾ï¤Î) ¥Õ¥¡¥¤¥ë¤¬
-¤¹¤Ç¤Ë¸ºß¤·¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥Ï¡¼¥É¥ê¥ó¥¯¤¬ 2¸Ä°Ê¾å¤¢¤ë¾ì¹ç¡£
+コアダンプに使おうとしたのと同じ名前の (書き込み可能な、通常の) ファイルが
+すでに存在し、そのファイルに対するハードリンクが 2個以上ある場合。
.IP *
.\"O The file system where the core dump file would be created is full;
.\"O or has run out of inodes; or is mounted read-only;
.\"O or the user has reached their quota for the file system.
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤è¤¦¤È¤·¤¿¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤¬¥Õ¥ë¤Ç¤¢¤ë¤«¡¢
-inode ¤¬Á´¤Æ»ÈÍѤµ¤ì¤Æ¤¤¤ë¤«¡¢Æɤ߹þ¤ßÀìÍѤǥޥ¦¥ó¥È¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡£
-¤Þ¤¿¤Ï¡¢¤½¤Î¥æ¡¼¥¶¤Î¥Ç¥£¥¹¥¯»ÈÍÑÎ̤¬¤½¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î
-¥¯¥ª¡¼¥¿ (quota) ¤Ë㤷¤Æ¤¤¤ë¡£
+コアダンプファイルを生成しようとしたファイルシステムがフルであるか、
+inode が全て使用されているか、読み込み専用でマウントされている場合。
+または、そのユーザのディスク使用量がそのファイルシステムの
+クオータ (quota) に達している。
.IP *
.\"O The directory in which the core dump file is to be created does
.\"O not exist.
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤è¤¦¤È¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡£
+コアダンプファイルを生成しようとしたディレクトリが存在しない場合。
.IP *
.\"O The
.\"O .B RLIMIT_CORE
.\"O .RI ( limit
.\"O in
.\"O .BR csh (1)).
-¥×¥í¥»¥¹Ëè¤Î¥ê¥½¡¼¥¹À©¸Â
+プロセス毎のリソース制限
.B RLIMIT_CORE
-(¥³¥¢¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º) ¤«
+(コアファイルのサイズ) か
.B RLIMIT_FSIZE
-(¥Õ¥¡¥¤¥ë¥µ¥¤¥º) ¤¬ 0 ¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡£
+(ファイルサイズ) が 0 に設定されている場合。
.BR getrlimit (2)
-¤ä¥·¥§¥ë¤Î
+やシェルの
.I ulimit
-¥³¥Þ¥ó¥É¤Î¥É¥¥å¥á¥ó¥È
+コマンドのドキュメント
.RB ( csh (1)
-¤Î
+の
.IR limit )
-¤ò»²¾È¡£
+を参照。
.IP *
.\"O The binary being executed by the process does not have read
.\"O permission enabled.
-¥×¥í¥»¥¹¤¬¼Â¹Ô¤·¤¿¥Ð¥¤¥Ê¥ê¥Õ¥¡¥¤¥ë¤ÎÆɤ߽Ф·µö²Ä¤¬Í¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¡£
+プロセスが実行したバイナリファイルの読み出し許可が有効になっていない場合。
.IP *
.\"O The process is executing a set-user-ID (set-group-ID) program
.\"O that is owned by a user (group) other than the real user (group)
.\"O .\" and PR_SET_DUMPABLE to this page?
.\"O file in
.\"O .BR proc (5).)
-¥×¥í¥»¥¹¤¬¼Â¹Ô¤·¤Æ¤¤¤ë set-user-ID (set-group-ID) ¥×¥í¥°¥é¥à¤Î½êͼԤÎ
-¥æ¡¼¥¶ (¥°¥ë¡¼¥×) ¤¬¡¢¥×¥í¥»¥¹¤Î¼Â UID (¼Â GID) ¤È°Û¤Ê¤ë¾ì¹ç
-(⤷¡¢
+プロセスが実行している set-user-ID (set-group-ID) プログラムの所有者の
+ユーザ (グループ) が、プロセスの実 UID (実 GID) と異なる場合
+(但し、
.BR prctl (2)
.B PR_SET_DUMPABLE
-Áàºî¤ÎÀâÌÀ¤È¡¢
+操作の説明と、
.BR proc (5)
-¤Î
+の
.I /proc/sys/fs/suid_dumpable
-¥Õ¥¡¥¤¥ë¤ÎÀâÌÀ¤â»²¾È¤Î¤³¤È)¡£
+ファイルの説明も参照のこと)。
.\" FIXME . Perhaps relocate discussion of /proc/sys/fs/suid_dumpable
.\" and PR_SET_DUMPABLE to this page?
.\"O .SS Naming of core dump files
-.SS ¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Î̾Á°
+.SS コアダンプファイルの名前
.\"O By default, a core dump file is named
.\"O .IR core ,
.\"O but the
.\"O can be set to define a template that is used to name core dump files.
.\"O The template can contain % specifiers which are substituted
.\"O by the following values when a core file is created:
-.\" motoki XXX Ʊ¤¸ÆâÍƤ¬½ÅÊ£¤·¤Æ½ñ¤«¤ì¤Æ¤¤¤ë¡£
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï
+.\" motoki XXX 同じ内容が重複して書かれている。
+デフォルトでは、コアダンプファイルの名前は
.I core
-¤È¤Ê¤ë¤¬¡¢¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò·è¤á¤ë¤Î¤Ë»È¤ï¤ì¤ë¥Æ¥ó¥×¥ì¡¼¥È¤ò
+となるが、コアダンプファイルの名前を決めるのに使われるテンプレートを
.I /proc/sys/kernel/core_pattern
-¥Õ¥¡¥¤¥ë¤ËÄêµÁ¤¹¤ë¤³¤È¤Ç¡¢¥Õ¥¡¥¤¥ë̾¤òÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤¤ë
+ファイルに定義することで、ファイル名を変更することができる
.RI ( /proc/sys/kernel/core_pattern
-¤Ï Linux 2.6 ¤ª¤è¤Ó 2.4.21 °Ê¹ß¤ÇÍøÍѤǤ¤ë)¡£
-¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤Ï % »Ø¼¨»Ò (specifier) ¤òÆþ¤ì¤ë¤³¤È¤¬¤Ç¤¤ë¡£
-¤³¤ì¤Ï¥³¥¢¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤ëºÝ¤Ë¡¢°Ê²¼¤ÎÃͤËÃÖ¤´¹¤¨¤é¤ì¤ë¡£
+は Linux 2.6 および 2.4.21 以降で利用できる)。
+テンプレートには % 指示子 (specifier) を入れることができる。
+これはコアファイルが生成される際に、以下の値に置き換えられる。
.PP
.RS 4
.PD 0
.TP 4
%%
.\"O a single % character
-1 ¤Ä¤Î % ʸ»ú
+1 つの % 文字
.TP
%p
.\"O PID of dumped process
-¥À¥ó¥×¤µ¤ì¤¿¥×¥í¥»¥¹¤Î¥×¥í¥»¥¹ID (PID)
+ã\83\80ã\83³ã\83\97ã\81\95ã\82\8cã\81\9fã\83\97ã\83ã\82»ã\82¹ã\81®ã\83\97ã\83ã\82»ã\82¹ID (PID)
.TP
%u
.\"O (numeric) real UID of dumped process
-¥À¥ó¥×¤µ¤ì¤¿¥×¥í¥»¥¹¤Î¼Â¥æ¡¼¥¶ ID (real UID)
+ã\83\80ã\83³ã\83\97ã\81\95ã\82\8cã\81\9fã\83\97ã\83ã\82»ã\82¹ã\81®å®\9fã\83¦ã\83¼ã\82¶ ID (real UID)
.TP
%g
.\"O (numeric) real GID of dumped process
-¥À¥ó¥×¤µ¤ì¤¿¥×¥í¥»¥¹¤Î¼Â¥°¥ë¡¼¥× ID (real GID)
+ダンプされたプロセスの実グループ ID (real GID)
.TP
%s
.\"O number of signal causing dump
-¥À¥ó¥×¤ò°ú¤µ¯¤³¤·¤¿¥·¥°¥Ê¥ë¤ÎÈÖ¹æ
+ダンプを引き起こしたシグナルの番号
.TP
%t
.\"O time of dump, expressed as seconds since the
.\"O Epoch, 1970-01-01 00:00:00 +0000 (UTC)
-¥À¥ó¥×»þ¹ï¡¢µª¸µ (Epoch; 1970-01-01 00:00:00 +0000 (UTC))
-¤«¤é¤ÎÉÿô¡£
+ダンプ時刻、紀元 (Epoch; 1970-01-01 00:00:00 +0000 (UTC))
+からの秒数。
.TP
%h
.\"O hostname (same as \fInodename\fP returned by \fBuname\fP(2))
-¥Û¥¹¥È̾ (\fBuname\fP(2) ¤ÇÊÖ¤µ¤ì¤ë \fInodename\fP ¤ÈƱ¤¸)
+ホスト名 (\fBuname\fP(2) で返される \fInodename\fP と同じ)
.TP
%e
.\"O executable filename (without path prefix)
-¼Â¹Ô¥Õ¥¡¥¤¥ë̾ (¥Ñ¥¹Ì¾¤Î¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤Ï´Þ¤Þ¤ì¤Ê¤¤)
+実行ファイル名 (パス名のプレフィックスは含まれない)
.TP
%c
.\"O core file size soft resource limit of crashing process (since Linux 2.6.24)
-¥¯¥é¥Ã¥·¥å¤·¤¿¥×¥í¥»¥¹¤Î¥³¥¢¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Ë´Ø¤¹¤ë¥½¥Õ¥È¥ê¥½¡¼¥¹¾å¸Â
-(Linux 2.6.24 °Ê¹ß)
+クラッシュしたプロセスのコアファイルのサイズに関するソフトリソース上限
+(Linux 2.6.24 以降)
.PD
.RE
.PP
.\"O A single % at the end of the template is dropped from the
.\"O core filename, as is the combination of a % followed by any
.\"O character other than those listed above.
-¥Æ¥ó¥×¥ì¡¼¥È¤ÎËöÈø¤Ë 1 ¸Ä¤À¤± % ¤¬¤¢¤ë¾ì¹ç¡¢
-¤½¤Î % ¤Ï¥³¥¢¥Õ¥¡¥¤¥ë̾¤Ë¤Ï´Þ¤á¤é¤ì¤Ê¤¤¡£¤Þ¤¿¡¢¾å¤ÇÎóµó¤µ¤ì¤Æ
-¤¤¤Ê¤¤ % ¤Èʸ»ú¤ÎÁȤ߹ç¤ï¤»¤¬¤¢¤Ã¤¿¾ì¹ç¤âƱÍͤǤ¢¤ë¡£
+テンプレートの末尾に 1 個だけ % がある場合、
+その % はコアファイル名には含められない。また、上で列挙されて
+いない % と文字の組み合わせがあった場合も同様である。
.\"O All other characters in the template become a literal
.\"O part of the core filename.
-¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤ª¤±¤ë¾¤Îʸ»ú¤Ï¡¢
-¥³¥¢¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ¤½¤Î¤Þ¤Þ»È¤ï¤ì¤ë¡£
+テンプレートにおける他の文字は、
+コアファイル名としてそのまま使われる。
.\"O The template may include \(aq/\(aq characters, which are interpreted
.\"O as delimiters for directory names.
-¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤Ï \(aq/\(aq ʸ»ú¤òÆþ¤ì¤ë¤³¤È¤¬¤Ç¤¡¢
-¥Ç¥£¥ì¥¯¥È¥ê̾¤Î¶èÀÚ¤êʸ»ú¤È²ò¼á¤µ¤ì¤ë¡£
+テンプレートには \(aq/\(aq 文字を入れることができ、
+ディレクトリ名の区切り文字と解釈される。
.\"O The maximum size of the resulting core filename is 128 bytes (64 bytes
.\"O in kernels before 2.6.19).
-·ë²Ì¤È¤·¤ÆÀ¸À®¤µ¤ì¤ë¥³¥¢¥Õ¥¡¥¤¥ë̾¤ÎºÇÂ祵¥¤¥º¤Ï 128 ¥Ð¥¤¥È¤Ç¤¢¤ë
-(2.6.19 ¤è¤êÁ°¤Î¥«¡¼¥Í¥ë¤Ç¤Ï 64 ¥Ð¥¤¥È)¡£
+結果として生成されるコアファイル名の最大サイズは 128 バイトである
+(2.6.19 より前のカーネルでは 64 バイト)。
.\"O The default value in this file is "core".
-¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï "core" ¤Ç¤¢¤ë¡£
+このファイルのデフォルト値は "core" である。
.\"O For backward compatibility, if
.\"O .I /proc/sys/kernel/core_pattern
.\"O does not include "%p" and
.\"O .I /proc/sys/kernel/core_uses_pid
.\"O (see below)
.\"O is nonzero, then .PID will be appended to the core filename.
-°ÊÁ°¤Î¤â¤Î¤È¤Î¸ß´¹À¤Î¤¿¤á¡¢
+以前のものとの互換性のため、
.I /proc/sys/kernel/core_pattern
-¤Ë "%p" ¤¬´Þ¤Þ¤ì¤º¡¢
-¤«¤Ä
+に "%p" が含まれず、
+かつ
.I /proc/sys/kernel/core_uses_pid
-(²¼µ»²¾È) ¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢.PID ¤¬¥³¥¢¥Õ¥¡¥¤¥ë̾¤ËÄɲ䵤ì¤ë¡£
+(下記参照) が 0 でない場合は、.PID がコアファイル名に追加される。
.\"O Since version 2.4, Linux has also provided
.\"O a more primitive method of controlling
.\"O If this file contains a nonzero value, then the core dump file includes
.\"O the process ID in a name of the form
.\"O .IR core.PID .
-¥Ð¡¼¥¸¥ç¥ó 2.4 °Ê¹ß¤Î Linux ¤Ç¤Ï
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Î̾Á°¤òÀ©¸æ¤¹¤ë¸¶»ÏŪ¤ÊÊýË¡¤âÄ󶡤µ¤ì¤Æ¤¤¤ë¡£
+バージョン 2.4 以降の Linux では
+コアダンプファイルの名前を制御する原始的な方法も提供されている。
.I /proc/sys/kernel/core_uses_pid
-¥Õ¥¡¥¤¥ë¤ËÃÍ 0 ¤¬½ñ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Ïñ½ã¤Ë
+ファイルに値 0 が書かれている場合、コアダンプファイルは単純に
.I core
-¤È¤¤¤¦Ì¾Á°¤Ë¤Ê¤ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë 0 °Ê³°¤ÎÃͤ¬½ñ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¡¢
-¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Ï
+という名前になる。このファイルに 0 以外の値が書かれている場合、
+コアダンプファイルは
.I core.PID
-¤È¤¤¤¦·Á¼°¤Î̾Á°¤Ë¤Ê¤ê¡¢¥Õ¥¡¥¤¥ë̾¤Ë¥×¥í¥»¥¹ ID ¤¬´Þ¤Þ¤ì¤ë¡£
+という形式の名前になり、ファイル名にプロセス ID が含まれる。
.\"O .SS Piping core dumps to a program
-.SS ¥³¥¢¥À¥ó¥×¤Î¥×¥í¥°¥é¥à¤Ø¤Î¥Ñ¥¤¥×
+.SS コアダンプのプログラムへのパイプ
.\"O Since kernel 2.6.19, Linux supports an alternate syntax for the
.\"O .I /proc/sys/kernel/core_pattern
.\"O file.
.\"O Instead of being written to a disk file, the core dump is given as
.\"O standard input to the program.
.\"O Note the following points:
-¥«¡¼¥Í¥ë 2.6.19 °Ê¹ß¤Ç¤Ï¡¢Linux ¤Ï
+カーネル 2.6.19 以降では、Linux は
.I /proc/sys/kernel/core_pattern
-¥Õ¥¡¥¤¥ë¤ÎÊ̤ι½Ê¸¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡£
-¤³¤Î¥Õ¥¡¥¤¥ë¤ÎºÇ½é¤Îʸ»ú¤¬¥Ñ¥¤¥×µ¹æ (\fB|\fP) ¤Ç¤¢¤ì¤Ð¡¢
-¤½¤Î¹Ô¤Î»Ä¤ê¤ÎÉôʬ¤Ï¼Â¹Ô¤¹¤ë¥×¥í¥°¥é¥à¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
-¥³¥¢¥À¥ó¥×¤Ï¡¢¥Ç¥£¥¹¥¯¾å¤Î¥Õ¥¡¥¤¥ë¤Ë½ñ¤¹þ¤Þ¤ì¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢
-¥×¥í¥°¥é¥à¤Îɸ½àÆþÎϤȤ·¤ÆÅϤµ¤ì¤ë¡£
-°Ê²¼¤ÎÅÀ¤ËÃí°Õ¤¹¤ë¤³¤È¡£
+ファイルの別の構文をサポートしている。
+このファイルの最初の文字がパイプ記号 (\fB|\fP) であれば、
+その行の残りの部分は実行するプログラムとして解釈される。
+コアダンプは、ディスク上のファイルに書き込まれるのではなく、
+プログラムの標準入力として渡される。
+以下の点に注意すること。
.IP * 3
.\"O The program must be specified using an absolute pathname (or a
.\"O pathname relative to the root directory, \fI/\fP),
.\"O and must immediately follow the '|' character.
-¥×¥í¥°¥é¥à¤ÏÀäÂХѥ¹Ì¾ (¤â¤·¤¯¤Ï¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê \fI/\fP ¤«¤é¤Î
-ÁêÂХѥ¹Ì¾) ¤Ç»ØÄꤵ¤ì¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
-¤Þ¤¿¡¢'|' ʸ»ú¤Îľ¸å¤«¤é»Ï¤á¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+プログラムは絶対パス名 (もしくはルートディレクトリ \fI/\fP からの
+相対パス名) で指定されなければならない。
+また、'|' 文字の直後から始めなければならない。
.IP *
.\"O The process created to run the program runs as user and group
.\"O .IR root .
-¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤ËÀ¸À®¤µ¤ì¤ë¥×¥í¥»¥¹¤Ï¡¢
-¥æ¡¼¥¶¡¢¥°¥ë¡¼¥×¤È¤â
+プログラムを実行するために生成されるプロセスは、
+ユーザ、グループとも
.I root
-¤È¤·¤Æ¼Â¹Ô¤µ¤ì¤ë¡£
+として実行される。
.IP *
.\"O Command-line arguments can be supplied to the
.\"O program (since kernel 2.6.24),
.\"O delimited by white space (up to a total line length of 128 bytes).
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¤¿ô¤ò¥×¥í¥°¥é¥à¤ËÍ¿¤¨¤ë¤³¤È¤¬¤Ç¤ (¥«¡¼¥Í¥ë 2.6.24 °Ê¹ß)¡¢
-°ú¤¿ô¤Ï¥Û¥ï¥¤¥È¥¹¥Ú¡¼¥¹¤Ç¶èÀÚ¤ë
-(1¹Ô¤ÎºÇÂçĹ¤Ï 128 ¥Ð¥¤¥È¤¬¾å¸Â¤Ç¤¢¤ë)¡£
+コマンドライン引き数をプログラムに与えることができ (カーネル 2.6.24 以降)、
+引き数はホワイトスペースで区切る
+(1行の最大長は 128 バイトが上限である)。
.IP *
.\"O The command-line arguments can include any of
.\"O the % specifiers listed above.
.\"O For example, to pass the PID of the process that is being dumped, specify
.\"O .I %p
.\"O in an argument.
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¤¿ô¤Ë¤Ï¡¢¾åµ¤Î¥ê¥¹¥È¤Ë¤¢¤ë % »Ø¼¨»Ò¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤¤ë¡£
-Î㤨¤Ð¡¢¥À¥ó¥×¤µ¤ì¤ë¥×¥í¥»¥¹¤Î PID ¤òÅϤ¹¤Ë¤Ï¡¢
-°ú¤¿ô¤Ë
+コマンドライン引き数には、上記のリストにある % 指示子を含めることができる。
+例えば、ダンプされるプロセスの PID を渡すには、
+引き数に
.I %p
-¤ò»ØÄꤹ¤ë¡£
+を指定する。
.\"O .SS Controlling which mappings are written to the core dump
-.SS ¤É¤Î¥Þ¥Ã¥Ô¥ó¥°¤ò¥³¥¢¥À¥ó¥×¤Ë½ñ¤¹þ¤à¤«¤òÀ©¸æ¤¹¤ë
+.SS どのマッピングをコアダンプに書き込むかを制御する
.\"O Since kernel 2.6.23, the Linux-specific
.\"O .IR /proc/PID/coredump_filter
.\"O file can be used to control which memory segments are written to the
.\"O core dump file in the event that a core dump is performed for the
.\"O process with the corresponding process ID.
-¥«¡¼¥Í¥ë 2.6.23 °Ê¹ß¤Ç¤Ï¡¢Linux ¸ÇͤΥե¡¥¤¥ë
+カーネル 2.6.23 以降では、Linux 固有のファイル
.I /proc/PID/coredump_filter
-¤ò»È¤Ã¤Æ¡¢Âбþ¤¹¤ë¥×¥í¥»¥¹ ID ¤ò»ý¤Ä¥×¥í¥»¥¹¤ËÂФ·¤Æ¥³¥¢¥À¥ó¥×¤¬¹Ô¤ï¤ì¤ë
-ºÝ¤Ë¡¢¤É¤Î¥á¥â¥ê¥»¥°¥á¥ó¥È¤ò¥³¥¢¥À¥ó¥×¥Õ¥¡¥¤¥ë¤Ë½ñ¤¹þ¤à¤«¤òÀ©¸æ¤Ç¤¤ë¡£
+を使って、対応するプロセス ID を持つプロセスに対してコアダンプが行われる
+際に、どのメモリセグメントをコアダンプファイルに書き込むかを制御できる。
.\"O The value in the file is a bit mask of memory mapping types (see
.\"O .BR mmap (2)).
.\"O If a bit is set in the mask, then memory mappings of the
.\"O corresponding type are dumped; otherwise they are not dumped.
.\"O The bits in this file have the following meanings:
-¤³¤Î¥Õ¥¡¥¤¥ë¤ÎÃͤϥá¥â¥ê¥Þ¥Ã¥Ô¥ó¥°¼ïÊÌ
+このファイルの値はメモリマッピング種別
.RB ( mmap (2)
-»²¾È) ¤Î¥Ó¥Ã¥È¥Þ¥¹¥¯¤Ç¤¢¤ë¡£
-¥Þ¥¹¥¯Æâ¤Î¤¢¤ë¥Ó¥Ã¥È¤¬¥»¥Ã¥È¤µ¤ì¤ë¤È¡¢¤½¤Î¥Ó¥Ã¥È¤ËÂбþ¤¹¤ë¼ïÊ̤Î
-¥á¥â¥ê¥Þ¥Ã¥Ô¥ó¥°¤¬¥À¥ó¥×¤µ¤ì¤ë¡£¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¤â¤Î¤Ï¥À¥ó¥×¤µ¤ì¤Ê¤¤¡£
-¤³¤Î¥Õ¥¡¥¤¥ë¤Î³Æ¥Ó¥Ã¥È¤Ï°Ê²¼¤Î°ÕÌ£¤ò»ý¤Ä¡£
+参照) のビットマスクである。
+マスク内のあるビットがセットされると、そのビットに対応する種別の
+メモリマッピングがダンプされる。セットされていないものはダンプされない。
+このファイルの各ビットは以下の意味を持つ。
.PP
.PD 0
.RS 4
.TP
bit 0
.\"O Dump anonymous private mappings.
-̵̾¤Î¥×¥é¥¤¥Ù¡¼¥È¥Þ¥Ã¥Ô¥ó¥° (anonymous private mappings) ¤ò¥À¥ó¥×¤¹¤ë¡£
+無名のプライベートマッピング (anonymous private mappings) をダンプする。
.TP
bit 1
.\"O Dump anonymous shared mappings.
-̵̾¤Î¶¦Í¥Þ¥Ã¥Ô¥ó¥° (anonymous shared mappings) ¤ò¥À¥ó¥×¤¹¤ë¡£
+無名の共有マッピング (anonymous shared mappings) をダンプする。
.TP
bit 2
.\"O Dump file-backed private mappings.
-¥Õ¥¡¥¤¥ë¤È´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥×¥é¥¤¥Ù¡¼¥È¥Þ¥Ã¥Ô¥ó¥°
-(file-backed private mappings) ¤ò¥À¥ó¥×¤¹¤ë¡£
+ã\83\95ã\82¡ã\82¤ã\83«ã\81¨é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\97ã\83©ã\82¤ã\83\99ã\83¼ã\83\88ã\83\9eã\83\83ã\83\94ã\83³ã\82°
+(file-backed private mappings) をダンプする。
.TP
bit 3
.\"O Dump file-backed shared mappings.
-¥Õ¥¡¥¤¥ë¤È´ØÏ¢ÉÕ¤±¤é¤ì¤¿¶¦Í¥Þ¥Ã¥Ô¥ó¥°
-(file-backed shared mappings) ¤ò¥À¥ó¥×¤¹¤ë¡£
+ã\83\95ã\82¡ã\82¤ã\83«ã\81¨é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9få\85±æ\9c\89ã\83\9eã\83\83ã\83\94ã\83³ã\82°
+(file-backed shared mappings) をダンプする。
.\" file-backed shared mappings of course also update the underlying
.\" mapped file.
.TP
.\"O bit 4 (since Linux 2.6.24)
.\"O Dump ELF headers.
-bit 4 (Linux 2.6.24 °Ê¹ß)
-ELF ¥Ø¥Ã¥À¤ò¥À¥ó¥×¤¹¤ë¡£
+bit 4 (Linux 2.6.24 以降)
+ELF ヘッダをダンプする。
.TP
.\"O bit 5 (since Linux 2.6.28)
.\"O Dump private huge pages.
-bit 5 (Linux 2.6.28 °Ê¹ß)
-¥×¥é¥¤¥Ù¡¼¥È¤Ê¥Ò¥å¡¼¥¸¥Ú¡¼¥¸ (private huge page) ¤ò¥À¥ó¥×¤¹¤ë¡£
+bit 5 (Linux 2.6.28 以降)
+プライベートなヒュージページ (private huge page) をダンプする。
.TP
.\"O bit 6 (since Linux 2.6.28)
.\"O Dump shared huge pages.
-bit 6 (Linux 2.6.28 °Ê¹ß)
-¶¦Í¤µ¤ì¤¿¥Ò¥å¡¼¥¸¥Ú¡¼¥¸ (shared huge page) ¤ò¥À¥ó¥×¤¹¤ë¡£
+bit 6 (Linux 2.6.28 以降)
+共有されたヒュージページ (shared huge page) をダンプする。
.RE
.PD
.PP
.\"O kernel configuration option is enabled), and 5.
.\"O The value of this file is displayed in hexadecimal.
.\"O (The default value is thus displayed as 33.)
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ó¥Ã¥È 0, 1, 4, 5 ¤¬¥»¥Ã¥È¤µ¤ì¤ë¡£
-(¥Ó¥Ã¥È 4 ¤¬¥»¥Ã¥È¤µ¤ì¤ë¤Î¤Ï¡¢¥«¡¼¥Í¥ë¤¬ÀßÄꥪ¥×¥·¥ç¥ó
+デフォルトでは、ビット 0, 1, 4, 5 がセットされる。
+(ビット 4 がセットされるのは、カーネルが設定オプション
.B CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS
-¤ò͸ú¤Ë¤·¤ÆºîÀ®¤µ¤ì¤¿¾ì¹ç¤Ç¤¢¤ë)¡£
-¤³¤Î¥Õ¥¡¥¤¥ë¤ÎÃÍ¤Ï 16 ¿Ê·Á¼°¤Çɽ¼¨¤µ¤ì¤ë
-(¤·¤¿¤¬¤Ã¤Æ¡¢¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï 33 ¤Èɽ¼¨¤µ¤ì¤ë)¡£
+を有効にして作成された場合である)。
+このファイルの値は 16 進形式で表示される
+(したがって、デフォルト値は 33 と表示される)。
.\"O Memory-mapped I/O pages such as frame buffer are never dumped, and
.\"O virtual DSO pages are always dumped, regardless of the
.\"O .I coredump_filter
.\"O value.
.I coredump_filter
-¤ÎÃͤ˴ؤï¤é¤º¡¢¥Õ¥ì¡¼¥à¥Ð¥Ã¥Õ¥¡¤Ê¤É¤Î memory-mapped I/O ¤Ë´Ø¤¹¤ë
-¥Ú¡¼¥¸¤Ï·è¤·¤Æ¥À¥ó¥×¤µ¤ì¤º¡¢²¾ÁÛ DSO ¥Ú¡¼¥¸¤Ï¾ï¤Ë¥À¥ó¥×¤µ¤ì¤ë¡£
+の値に関わらず、フレームバッファなどの memory-mapped I/O に関する
+ページは決してダンプされず、仮想 DSO ページは常にダンプされる。
.\"O A child process created via
.\"O .BR fork (2)
.\"O value is preserved across an
.\"O .BR execve (2).
.BR fork (2)
-¤ÇºîÀ®¤µ¤ì¤ë»Ò¥×¥í¥»¥¹¤Ï¿Æ¥×¥í¥»¥¹¤Î
+で作成される子プロセスは親プロセスの
.I coredump_filter
-¤ÎÃͤò·Ñ¾µ¤¹¤ë¡£
+の値を継承する。
.BR execve (2)
-¤ÎÁ°¸å¤Ç
+の前後で
.I coredump_filter
-¤ÎÃͤÏÊÝ»ý¤µ¤ì¤ë¡£
+の値は保持される。
.\"O It can be useful to set
.\"O .I coredump_filter
.\"O in the parent shell before running a program, for example:
-Îã¤Î¤è¤¦¤Ë¡¢¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë¿Æ¥·¥§¥ë¤Î
+例のように、プログラムを実行する前に親シェルの
.I coredump_filter
-¤òÀßÄꤷ¤Æ¤ª¤¯¤ÈÌòΩ¤Ä¤³¤È¤¬¤¢¤ë¡£
+を設定しておくと役立つことがある。
.in +4n
.nf
.\"O This file is only provided if the kernel was built with the
.\"O .B CONFIG_ELF_CORE
.\"O configuration option.
-¤³¤Î¥Õ¥¡¥¤¥ë¤¬Ä󶡤µ¤ì¤ë¤Î¤Ï¡¢¥«¡¼¥Í¥ë¤¬ÀßÄꥪ¥×¥·¥ç¥ó
+このファイルが提供されるのは、カーネルが設定オプション
.B CONFIG_ELF_CORE
-¤ò͸ú¤Ë¤·¤ÆºîÀ®¤µ¤ì¤¿¾ì¹ç¤À¤±¤Ç¤¢¤ë¡£
+を有効にして作成された場合だけである。
.\"O .SH NOTES
-.SH È÷¹Í
+.SH 備考
.\"O The
.\"O .BR gdb (1)
.\"O .I gcore
.\"O command can be used to obtain a core dump of a running process.
.BR gdb (1)
-¤Î
+の
.I gcore
-¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¼Â¹ÔÃæ¤Î¥×¥í¥»¥¹¤Î¥³¥¢¥À¥ó¥×¤ò¼èÆÀ¤Ç¤¤ë¡£
+コマンドを使用すると、実行中のプロセスのコアダンプを取得できる。
.\"O If a multithreaded process (or, more precisely, a process that
.\"O shares its memory with another process by being created with the
.\"O unless the process ID was already included elsewhere in the
.\"O filename via a %p specification in
.\"O .IR /proc/sys/kernel/core_pattern .
-¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¥×¥í¥»¥¹
-(¤è¤êÀµ³Î¤Ë¤Ï¡¢
+ã\83\9eã\83«ã\83\81ã\82¹ã\83¬ã\83\83ã\83\89ã\83\97ã\83ã\82»ã\82¹
+(より正確には、
.BR clone (2)
-¤Î
+の
.B CLONE_VM
-¤ÇÀ¸À®¤µ¤ì¤¿ÊÌ¥×¥í¥»¥¹¤È¥á¥â¥ê¤ò¶¦Í¤·¤Æ¤¤¤ë¥×¥í¥»¥¹)
-¤¬¥³¥¢¥À¥ó¥×¤òÀ¸À®¤¹¤ë¾ì¹ç¡¢
-¥³¥¢¥Õ¥¡¥¤¥ë̾¤Ë¥×¥í¥»¥¹ ID ¤¬É¬¤ºÉղ䵤ì¤ë¡£
-¤¿¤À¤·¡¢
+ã\81§ç\94\9fæ\88\90ã\81\95ã\82\8cã\81\9få\88¥ã\83\97ã\83ã\82»ã\82¹ã\81¨ã\83¡ã\83¢ã\83ªã\82\92å\85±æ\9c\89ã\81\97ã\81¦ã\81\84ã\82\8bã\83\97ã\83ã\82»ã\82¹)
+がコアダンプを生成する場合、
+コアファイル名にプロセス ID が必ず付加される。
+ただし、
.I /proc/sys/kernel/core_pattern
-¤Î %p »ØÄê¤Ë¤è¤ê¥³¥¢¥Õ¥¡¥¤¥ë̾¤Î¤É¤³¤«Â¾¤Î¾ì½ê¤Ë¥×¥í¥»¥¹ ID ¤¬
-¤¹¤Ç¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥×¥í¥»¥¹ ID ¤¬ËöÈø¤ËÉղ䵤ì¤Ê¤¤¡£
+の %p 指定によりコアファイル名のどこか他の場所にプロセス ID が
+すでに含まれている場合は、プロセス ID が末尾に付加されない。
.\"O (This is primarily useful when employing the LinuxThreads implementation,
.\"O where each thread of a process has a different PID.)
-(¤³¤Îµ¡Ç½¤¬¤Þ¤ºÌò¤ËΩ¤Ä¤Î¤Ï LinuxThreads ¼ÂÁõ¤òÍøÍѤ·¤Æ¤¤¤ë¾ì¹ç¤Ç¤¢¤ë¡£
-LinuxThreads ¼ÂÁõ¤Ç¤Ï¡¢¥×¥í¥»¥¹Æâ¤Î¸Ä¡¹¤Î¥¹¥ì¥Ã¥É¤Ï°Û¤Ê¤ë¥×¥í¥»¥¹ ID
-¤ò»ý¤Ä¡£)
+(この機能がまず役に立つのは LinuxThreads 実装を利用している場合である。
+LinuxThreads å®\9fè£\85ã\81§ã\81¯ã\80\81ã\83\97ã\83ã\82»ã\82¹å\86\85ã\81®å\80\8bã\80\85ã\81®ã\82¹ã\83¬ã\83\83ã\83\89ã\81¯ç\95°ã\81ªã\82\8bã\83\97ã\83ã\82»ã\82¹ ID
+を持つ。)
.\" Always including the PID in the name of the core file made
.\" sense for LinuxThreads, where each thread had a unique PID,
.\" but doesn't seem to serve any purpose with NPTL, where all the
.\" way of telling which threading implementation the userspace
.\" application is using). -- mtk, April 2006
.\"O .SH EXAMPLE
-.SH Îã
+.SH 例
.\"O The program below can be used to demonstrate the use of the
.\"O pipe syntax in the
.\"O .I /proc/sys/kernel/core_pattern
.\"O The following shell session demonstrates the use of this program
.\"O (compiled to create an executable named
.\"O .IR core_pattern_pipe_test ):
-°Ê²¼¤Î¥×¥í¥°¥é¥à¤Ï
+以下のプログラムは
.I /proc/sys/kernel/core_pattern
-¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¤¥×¹½Ê¸¤Î»ÈÍÑÎã¤ò¼¨¤·¤Æ¤¤¤ë¡£
-°Ê²¼¤Î¥·¥§¥ë¤Î¥»¥Ã¥·¥ç¥ó¤Ï¤³¤Î¥×¥í¥°¥é¥à¤Î»ÈÍÑÎã¤ò¼¨¤¹¤â¤Î¤Ç¤¢¤ë
-(¥³¥ó¥Ñ¥¤¥ë¤·¤Æ
+ファイルのパイプ構文の使用例を示している。
+以下のシェルのセッションはこのプログラムの使用例を示すものである
+(コンパイルして
.I core_pattern_pipe_test
-¤È¤¤¤¦Ì¾Á°¤Î¼Â¹Ô¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Æ¤¤¤ë)¡£
+という名前の実行ファイルを作成している)。
.PP
.in +4n
.nf
.fi
.in
.\"O .SS Program source
-.SS ¥×¥í¥°¥é¥à¤Î¥½¡¼¥¹
+.SS ã\83\97ã\83ã\82°ã\83©ã\83 ã\81®ã\82½ã\83¼ã\82¹
\&
.nf
/* core_pattern_pipe_test.c */
}
.fi
.\"O .SH SEE ALSO
-.SH ´ØÏ¢¹àÌÜ
+.SH 関連項目
.BR bash (1),
.BR gdb (1),
.BR getrlimit (2),