長南です。 > > ○ the kernel ring buffer: > > カーネルのリングバッファ がわかりやすいかな。 一箇所を抜かして、「カーネルのリングバッファ」にしました。一箇所というのは、 -T オプションの訳注の中です。そこでは、「の」を繰り返すと、うるさく感じられる ので、「カーネルリングバッファ」にしておきました。 > > ○ -d, --show-delta: > > 増分 だと 増分バックアップ (Incremental backup)と言う言葉があるので、 > 差分 の方が良いと思います。 「差分」だと、プラスマイナス、両方を意味するでしょう。この場合は単調増加ですし、 「増分」の方が意味的にはより正確ではないかと...。「増分」という訳語も英和辞典に 出ていますし。 > > ○ -p, --force-prefix: > > > > multi-line message というのは、具体的にはどういうもので、それが > > --force-prefix でどうなるのか分からないでいます。 > >たとえば > > Feb 06 14:30:40 foobar systemd[1]: Started PackageKit Daemon. > -- Subject: Unit packagekit.service has finished start-up > -- Defined-By: systemd > > のような物ではないでしょうか。 これは、どうやったら、こうなりました? お使いのディストリビューションは、 何ですか? うちの場合、dmesg は debian 10 のもの (util-linux 2.33.1)、 それに util-linux 2.36 を debian 9 上で build したものですが、どちらでも 以下のようにしかなりません。つまり、--force-prefix を付けても付けなくても、 複数行メッセージの各行にタイムスタンプが付きます。以下の引用は、複数行メッセージの 例として間違えていませんよね。 # LANG=C dmesg -T |grep -B 1 "\.\.\." [Wed Feb 10 12:50:44 2021] Performance Events: PEBS fmt3+, Skylake events, 32-deep LBR, full-width counters, Intel PMU driver. [Wed Feb 10 12:50:44 2021] ... version: 4 [Wed Feb 10 12:50:44 2021] ... bit width: 48 [Wed Feb 10 12:50:44 2021] ... generic registers: 4 [Wed Feb 10 12:50:44 2021] ... value mask: 0000ffffffffffff [Wed Feb 10 12:50:44 2021] ... max period: 00007fffffffffff [Wed Feb 10 12:50:44 2021] ... fixed-purpose events: 3 [Wed Feb 10 12:50:44 2021] ... event mask: 000000070000000f # LANG=C dmesg -T --force-prefix |grep -B 1 "\.\.\." [Wed Feb 10 12:50:44 2021] Performance Events: PEBS fmt3+, Skylake events, 32-deep LBR, full-width counters, Intel PMU driver. [Wed Feb 10 12:50:44 2021] ... version: 4 [Wed Feb 10 12:50:44 2021] ... bit width: 48 [Wed Feb 10 12:50:44 2021] ... generic registers: 4 [Wed Feb 10 12:50:44 2021] ... value mask: 0000ffffffffffff [Wed Feb 10 12:50:44 2021] ... max period: 00007fffffffffff [Wed Feb 10 12:50:44 2021] ... fixed-purpose events: 3 [Wed Feb 10 12:50:44 2021] ... event mask: 000000070000000f > > ○ -T, --ctime: > > > 「調整 (adjust)」という訳語ももっと適当なものがあるかもしれません。 > > 修正 のほうがいいかなあ。 修正や補正をしないから、問題が出るわけで ... ああ、そうか、前のタイムスタンプを 修正するということですね。 この adjust は「時計 (時刻、時間) 合わせをする」で、事実上「時刻を決める、 定める」ということではないでしょうか (「決める、定める」まで言ってしまうと、 adjust の意味から離れてしまいそうですが)。そこで、「時間合わせ」を使って すまそうかと思います。 -T, --ctime 人間に読みやすいタイムスタンプを表示する。 「このタイムスタンプは不正確なことがある!」のをご承知いただきたい。 ログに使用する、タイムスタンプの元になる情報 (the time source) は、システムのサスペンド/レジューム後に、更新が行われない。 更新が行われないので、タイムスタンプは、ブートタイムと単調増加クロック (monotonic clocks) との間の現在の増分 (delta) によって 時間合わせがなされているのだが、そうした時間合わせが、最後の レジューム以後に表示されるメッセージ同士の間でしかうまく働か ないのである。 [訳注] つまり、サスペンド/レジューム直後のタイムスタンプについ ては、 時間合わせがうまく行かない。 言葉を変えると、 カーネルリングバッファのタイムスタンプでは、ブートタイムと 実稼働時間のみが使用されており、サスペンド中の時間は加算 されない。それ故、サスペンド後の dmesg の日時表示は信用 できないということである。 ちょっと苦しまぎれですが、原文が混乱しているので、仕方がないと思います。 -- 長南洋一