KTRACE
Section: User Commands (1)
索引
jman
BSD mandoc
索引
名称
ktrace
- カーネルプロセスのトレースを行う
索引
書式
[-aCcdi
]
[-f trfile
]
[-g pgrp | -p pid
]
[-t trstr
]
[-adi
]
[-f trfile
]
[-t trstr
]
command
索引
解説
ユーティリティは、指定したプロセスのカーネルのトレースログを
とります。カーネルトレース情報はファイル
ktrace.out
に記録されます。
トレースされるカーネル動作には、
システムコール、namei 変換、シグナル処理、
I/O
処理が含まれます。
いったんプロセスのトレースを行うようにすると、トレースデータは
プロセスが終了するか、トレースポイントがクリアされるまで記録され続けます。
トレースしたプロセスは膨大な量のログを急速に作るため、ユーザはプロセスの
トレースを行う前にトレースを取り消す方法を覚えておくことを強くお勧めします。
ユーザが実行している全てのプロセスのトレース動作を取り消すには、
以下のコマンドで十分です。このコマンドが root 権限で実行された場合には、
全てのプロセスに対してトレースの取消しが行われます。
$ ktrace -C
トレースファイルはそのままでは読めませんので、
kdump(1)
を使って解析してください。
オプションとしては、以下のものがあります。
- -a
-
既存のトレースファイルを再構築しないで、後ろに追加していきます。
- -C
-
ユーザが実行している全てのプロセスのトレース動作をオフにします。
root が実行した場合はシステムのすべてのプロセスのトレースがオフになります。
- -c
-
指定したファイルやプロセスに対するトレースポイントをクリアします。
- -d
-
指定したプロセスの現在の子プロセスすべてに対してトレースを行います。
- -f trfile
-
トレース記録を
ktrace.out
のかわりに
trfile
に記録します。
- -g pgid
-
プロセスグループ内の全てのプロセスのトレースをオン (オフ) にします(
-g
フラグは 1 つしか指定できません)。
- -i
-
指定したプロセスが今後生成するすべての子プロセスに対し、トレースフラグを
継承させます。
- -p pid
-
指定したプロセス ID のトレースを行います (または 取り消します) (
-p
フラグは 1 つしか指定できません)。
- -t trstr
-
この文字列引数は、カーネルトレースポイントの 1 つを 1 文字で表現しています。
以下の表は、文字とトレースポイントの対応関係を表しています。
- c
-
システムコールのトレース
- n
-
namei 変換のトレース
- i
-
I/O
のトレース
- s
-
シグナル処理のトレース
- u
-
ユーザでのトレース
- w
-
コンテキストスイッチ
- +
-
トレースポイントのデフォルト集合、すなわち
c , n , i , s , u
をトレースします。
- command
-
指定したトレースフラグで
command
を実行します。
-p
-g
command
は相互に排他的です。同時に利用することはできません。
索引
使用例
# プロセス ID 34 のプロセスすべてのカーネル動作のトレースを行います。
$ ktrace -p 34
# プロセスグループ ID 15 のすべてのプロセスのカーネル動作のトレースを行い、
現在および未来の子プロセスすべてにトレースフラグを渡します。
$ ktrace -idg 15
# プロセス ID 65 のプロセスのすべてのトレースを取り消します。
$ ktrace -cp 65
# プロセス ID 70 のプロセスとそのすべての子プロセスの、シグナルに関する
トレースを取り消します。
$ ktrace -t s -cdp 70
# プロセス ID 67 のプロセスの
I/O
に関するトレースを有効にします。
$ ktrace -ti -p 67
# コマンド "w" を実行し、システムコールのみのトレースを行います。
$ ktrace -tc w
# "tracedata" ファイルに対するすべてのトレースを取り消します。
$ ktrace -c -f tracedata
# ユーザが所有しているすべてのプロセスのトレースを取り消します。
$ ktrace -C
索引
関連項目
kdump(1)
索引
バグ
trfile
が普通のファイルの場合だけ働きます。
索引
歴史
コマンドは
BSD 4.4
から実装されました。
索引
Index
- 名称
-
- 書式
-
- 解説
-
- 使用例
-
- 関連項目
-
- バグ
-
- 歴史
-
Time: 07:06:10 GMT, January 12, 2009