.\" DO NOT EDIT THIS FILE, IT IS NOT THE MASTER! .\" IT IS GENERATED AUTOMATICALLY FROM sudoreplay.mdoc.in .\" .\" Copyright (c) 2009-2016 Todd C. Miller .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2012 Yoichi Chonan .\" all rights reserved. .\" Translated (sudo-1.8.4p4) Wed May 9 12:26:33 JST 2012 .\" by Yoichi Chonan .\" Updated & Modified (sudo-1.8.17) Sat Sep 10 10:39:07 JST 2016 .\" By Yoichi Chonan .\" .TH SUDOREPLAY 8 "May 4, 2016" "Sudo 1.8.17" "System Manager's Manual" .nh .if n .ad l .SH 名前 \fBsudoreplay\fP \- sudo のセッションログを再生する .SH 書式 .HP 11n \fBsudoreplay\fP [\fB\-h\fP] [\fB\-d\fP\ \fIdir\fP] [\fB\-f\fP\ \fIfilter\fP] [\fB\-m\fP\ \fInum\fP] [\fB\-s\fP\ \fInum\fP] ID .HP 11n \fBsudoreplay\fP [\fB\-h\fP] [\fB\-d\fP\ \fIdir\fP] \fB\-l\fP [search\ expression] .SH 説明 \fBsudoreplay\fP は、\fBsudo\fP が生成した出力ログの再生、 または一覧表示を行う。再生する場合、 \fBsudoreplay\fP はセッションの再生をリアルタイムで実行することもできるし、 コマンドライン・オプションによって再生速度を (早くしたり、 遅くしたり) 調節することもできる。 .PP 上記書式の一つ目 (再生モード) で指定する引き数 \fIID\fP は、たとえば 0100A5 のような、 数字とアルファベットの大文字からなる 6 字の文字列か、 \fIsudoers\fP ファイルの \fIiolog_file\fP オプションにマッチするパターンかの、 どちらかでなければならない。 \fIsudoers\fP ファイルの \fIlog_output\fP オプションが有効な状態で \fBsudo\fP を使ってコマンドを実行すると、 \fITSID=ID\fP という文字列が、syslog 経由や \fBsudo\fP 独自のログファイルに記録される (訳注: その ID を引き数として指定するのである)。 また、\fIID\fP は、\fBsudoreplay\fP のリストモード (上記書式の二つ目) を使用して、 突き止めることもできる。 .IP "[\fB訳注\fP]:" 8 セッションの出力のロギングを有効にするには、 \fIsudoers\fP ファイルの Defaults 行で \fIlog_output\fP を指定するか、 あるいは、同ファイルのユーザ設定でコマンドに \fILOG_OUTPUT\fP タグを付ける。 詳細については、\fIsudoers\fP のマニュアルを参照していただきたい。 .PP リストモードで \fBsudoreplay\fP を使用すると、ユーザ、使用した端末 (tty)、 実行したコマンドなど、いくつかの条件に基づいて、セッションの ID を知ることができる。 .PP 再生モードでは、標準出力がリダイレクトされていないかぎり、 以下のキーが有効である。 .TP 14n \&'\en' または '\er' 次の再生イベントに飛ぶ。イベント間の休止が長いとき便利。 .TP 14n \&'\ ' (space) 出力を停止する。任意のキーを押せば、続行する。 .TP 14n \&'<' 再生速度を半分に下げる。 .TP 14n \&'>' 再生速度を倍にする。 .PP オプションとして以下のものが使用できる。 .TP 12n \fB\-d\fP \fIdir\fP, \fB\-\-directory\fP=\fIdir\fP セッションログは、デフォルトの \fI/var/log/sudo\-io\fP ではなく、 \fIdir\fP にある。 .TP 12n \fB\-f\fP \fIfilter\fP, \fB\-\-filter\fP=\fIfilter\fP 再生する I/O タイプを選択する。 デフォルトでは、\fBsudoreplay\fP はコマンドの標準出力、標準エラー、 それに端末 (tty) への出力を表示することになっている。 引き数 \fIfilter\fP は、コンマで区切ったリストであり、\fIstdout\fP, \fIstderr\fP, \fIttyout\fP から一つ以上指定する。 .TP 12n \fB\-h\fP, \fB\-\-help\fP 簡単なヘルプ・メッセージを標準出力に表示して終了する。 .TP 12n \fB\-l\fP, \fB\-\-list\fP [\fIsearch expression\fP] 「リスト・モード」を有効にする。 このモードでは、\fBsudoreplay\fP は、再生可能なセッションのリストを、 \fBsudo\fP のログファイルにおける表記と同じような書式で、 /var/log/sudo\-io 以下のファイル名 (すなわち、シーケンス・ナンバー) によってソートして表示する。検索式 (\fIsearch expression\fP) を指定すると、 表示する ID を絞り込むために、それが使用されることになる。 検索式は以下の述語 (predicate) から構成される。 .PP .RS 12n .PD 0 .TP 8n command \fIpattern\fP 実行されたコマンドが POSIX の拡張正規表現 \fIpattern\fP にマッチすれば、 真になる。 .PD .TP 8n cwd \fIdirectory\fP 指定したディレクトリをカレントディレクトリとしてコマンドが実行されていれば、 真になる。 .TP 8n fromdate \fIdate\fP コマンドを実行した日付が \fIdate\fP 以後なら、真になる。 サポートしている日時のフォーマットについては、 「日付と時刻のフォーマット」を参照すること。 .TP 8n group \fIrunas_group\fP 指定された \fIrunas_group\fP としてコマンドが実行されていれば、真になる。 \fIrunas_group\fP を明示的に指定して、 \fBsudo\fP を実行していないかぎり、 この欄はログに書き込まれないことに注意していただきたい。 .TP 8n runas \fIrunas_user\fP 指定された \fIrunas_user\fP としてコマンドが実行されていれば、真になる。 \fBsudo\fP は、デフォルトでは \fIroot\fP ユーザとしてコマンドを実行することをお忘れなく。 .TP 8n todate \fIdate\fP コマンドを実行した日付が \fIdate\fP 以前なら、真になる。 サポートしている日付のフォーマットについては、 「日付と時刻のフォーマット」を参照すること。 .TP 8n tty \fItty name\fP コマンドを実行したのが指定した端末デバイスならば、 真になる。\fItty name\fP は \fI/dev/\fP の部分を取って指定するべきである。 たとえば、\fI/dev/tty01\fP ではなく、\fItty01\fP のように。 (訳注: この説明は sudo\-1.7.4 のころの指定法である。 最近の \fBsudoreplay\fP では、\fI/dev/tty01\fP などと指定する必要があるようだ。) .TP 8n user \fIuser name\fP コマンドを実行したユーザが \fIuser name\fP なら、真になる。 .PP 述語は、他と区別できるなら、最短の文字列にまで短縮することができる (訳注: たとえば、現在のところ、述語 user の代わりに u が使える)。 .sp 述語は、\fIand\fP, \fIor\fP, \fI\&!\fP 演算子を使って、組み合わせることができる。 また、'\&(' と '\&)' によるグループ化も可能だ (ただし、たいていの場合、カッコはシェルに解釈されないように、 エスケープしなければならない)。\fIand\fP 演算子は省略可能である。 隣り合った述語は、間に \fIor\fP がないかぎり、 \fIand\fP で結合していると見なされるからだ。 .RE .TP 12n \fB\-m\fP, \fB\-\-max\-wait\fP \fImax_wait\fP キーを押してから次のキーを押すまでの間や、データ出力同士の間にある 待ち時間の上限を指定する。\fBsudoreplay\fP はデフォルトでは、 キーの押し下げやプログラムの出力の間にある経過時間を正確に再現する。 しかし、それだと、セッション中に長い間合いがある場合など、 うんざりすることになりかねない。 \fI\-m\fP オプションを指定すると、\fBsudoreplay\fP はそうした間合いを、 長くても \fImax_wait\fP 秒以内に抑えるようになる。この値は、 たとえば \fI2.5\fP といった、浮動小数点数で指定することも可能だ。 .TP 12n \fB\-s\fP, \fB\-\-speed\fP \fIspeed_factor\fP このオプションを指定すると、\fBsudoreplay\fP は、 キーの押し下げやプログラムの出力の間にある待ち時間の秒数を調節する。 このオプションを使えば、再生速度を早くしたり遅くしたりできるわけだ。 たとえば、\fIspeed_factor\fP に \fI2\fP を指定すれば、再生速度が 2 倍になるし、 \&\fI.5\fP を指定すれば、再生速度が半分になる。 .TP 12n \fB\-V\fP, \fB\-\-version\fP \fBsudoreplay\fP のバージョン番号を表示して終了する。 .SS 日付と時刻のフォーマット 日付と時刻の指定には、幾通りもの方法がある。よく使うフォーマットには、 次のものがある。 .TP 8n HH:MM:SS am MM/DD/CCYY timezone 午前/午後 (am/pm) の代わりに 24 時間制の時刻を使ってもよい。 .TP 8n HH:MM:SS am Month Day, Year timezone 午前/午後 (am/pm) の代わりに 24 時間制の時刻を使ってもよい。 月や曜日の名前には短縮形を使うこともできる。 月や曜日の名前は、英語で指定しなければならないのに注意すること。 (訳注: 曜日を指定する場合は、月と日にちの間以外なら、 たいていの場所に置くことができる。 なお、上記書式のように、日にちの後ろにコンマを入れるかどうかは、任意である。) .TP 8n CCYY\-MM\-DD HH:MM:SS ISO の日時フォーマット。 .TP 8n DD Month CCYY HH:MM:SS 月の名前には短縮形も使える。 .PP 日付と時刻の一方を省略することができる。am/pm とタイムゾーンは、 指定してもしなくてもよい。日付が指定されない場合は、 当日が指定されたものと見なされる。時刻が指定されない場合は、 指定された日にちの 00:00:00 が使用される。 時刻や日付のそれほど重要ではない部分も省略できるが、 その場合は 0 が指定されたものと見なされる。 .PP 以下の表記は、すべて有効な日時の指定である。 .TP 8n now 今日の今。 .TP 8n tomorrow 今からちょうど 1 日後。 .TP 8n yesterday 24 時間前。 .TP 8n 2 hours ago 2 時間前。 .TP 8n next Friday 来週の (やがて来る週の) 金曜日の 00:00:00。 "this friday" と混同してはいけない。 "this friday" ならば、今週の金曜日とマッチする。 .TP 8n last week 7 日前の現在時刻。"a week ago" と同じ。 .TP 8n a fortnight ago 14 日前の現在時刻。 .TP 8n 10:01 am 9/17/2009 2009 年 9 月 17 日 午前 10 時 01 分。 .TP 8n 10:01 am 今日の午前 10 時 01 分。 .TP 8n 10 今日の午前 10 時 00 分。 .TP 8n 9/17/2009 2009 年 9 月 17 日 午前 0 時 00 分。 .TP 8n 10:01 am Sep 17, 2009 2009 年 9 月 17 日 午前 10 時 01 分。 .PP 注意していただきたいが、相対的な日時指定は、 必ずしも期待通りに動作するとはかぎらない。 たとえば、"next" 修飾子は、"next Monday" などのように、 曜日と一緒に使うようになっている。 week, month, year などの単位と組み合わせて使った場合は、結果が期待よりも 1 多いものになってしまうのだ。たとえば、"next week" は、 今からちょうど 2 週間後の日時を指すことになってしまい、 意図したところとはたぶん違うだろう。この問題については、 \fBsudoreplay\fP の将来のバージョンで対処するつもりだ。 .SS "sudoreplay のデバッグ" バージョン 1.8.4 以上の \fBsudoreplay\fP は、 柔軟なデバッグ用の枠組みをサポートしており、 sudo.conf(5) ファイルの Debug 行で設定するようになっている。 .PP sudo.conf(5) の設定についてさらに詳しいことをお知りになりたかったら、 sudo.conf(5) のマニュアルをご覧になっていただきたい。 .SH ファイル .TP 26n \fI/etc/sudo.conf\fP デバッグ用枠組みの設定 .TP 26n \fI/var/log/sudo\-io\fP 入出力ログを格納するデフォルトのディレクトリ .TP 26n \fI/var/log/sudo\-io/00/00/01/log\fP セッションログについての情報 (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/stdin\fP セッションの標準入力のログ (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/stdout\fP セッションの標準出力のログ (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/stderr\fP セッションの標準エラーのログ (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/ttyin\fP セッションの tty 入力のログ (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/ttyout\fP セッションの tty 出力のログ (一例) .TP 26n \fI/var/log/sudo\-io/00/00/01/timing\fP セッションのタイミングを記録したファイル (一例) .PP \fBsudo\fP があるコマンドのパイプラインの一部として使用されたときを除いて、 \fIstdin\fP, \fIstdout\fP, \fIstderr\fP ファイルは空になることに注意していただきたい。 .SH 用例 ユーザ \fImillert\fP が実行したセッションを列挙する。 .nf .sp .RS 6n # sudoreplay \-l user millert .RE .fi .PP ユーザ \fIbob\fP が実行したセッションのうち、 コマンドに vi という文字列が含まれるものを列挙する。 .nf .sp .RS 6n # sudoreplay \-l user bob command vi .RE .fi .PP ユーザ \fIjeff\fP が実行したセッションのうち、 コマンドが下記の正規表現にマッチするものを列挙する。 .nf .sp .RS 6n # sudoreplay \-l user jeff command '/bin/[a\-z]*sh' .RE .fi .PP \fIjeff\fP か \fIbob\fP がコンソールで実行したセッションを列挙する。 .nf .sp .RS 6n # sudoreplay \-l \e( user jeff or user bob \e) tty console .RE .fi .SH 関連項目 script(1), sudo.conf(5), sudo(8) .SH 作者 多数の人々が長年に渡って \fBsudo\fP の開発に携わってきた。 当バージョンは主として次の者が書いたコードからできている。 .sp .RS 6n Todd C. Miller .RE .PP \fBsudo\fP の開発に貢献してくださった方々の詳細なリストについては、 配布物中の CONTRIBUTORS ファイルをご覧になっていただきたい。 (https://www.sudo.ws/contributors.html) .SH バグ \fBsudoreplay\fP にバグを発見したと思ったら、https://bugzilla.sudo.ws/ にアクセスして、バグレポートを提出していただきたい。 .SH サポート ある程度の無料サポートが sudo\-users メーリングリストを通して利用できる。 購読やアーカイブの検索には、次の URL を御覧になるとよい。 https://www.sudo.ws/mailman/listinfo/sudo\-users .SH 免責 \fBsudoreplay\fP は「現状のまま」提供される。 明示的な、あるいは黙示的ないかなる保証も、 商品性や特定目的への適合性についての黙示的な保証を含め、 またそれのみに止まらず、これを否認する。詳細な全文については、 \fBsudo\fP と一緒に配布されている LICENSE ファイルや、 次の Web ページをご覧いただきたい。 https://www.sudo.ws/license.html