追加読書

追加読書

dmesgリアルタイムで印刷物を見たい人からウェブ上に多くの質問が浮かんでいます。すべての提案と回答にはdmesg -w、、 systemd tailjournalctl -fおよび/またはsyslog設定を使用してdmesg情報を特定のコンソールなどに出力することが含まれます。

珍しい状況に封着しました。また、dmesg(カーネルデバッグ)出力をリアルタイムで確認する必要がありますが、ユーザースペースの静止マシンで確認する必要があります。(詳細は下記参照)

ベアボーンカーネルを起動すると、init=/bin/bash++Altはsyslogや同様のプロセスが実行されていなくても魔法のSysRqヘルプテキストをすぐに印刷SysRqします。hこの例は、カーネルがユーザースペースの助けを借りずにdmesgメッセージを画面に直接印刷できることを示しています。

残念ながら、私のArch Linuxシステムのコンポーネントは、画面に到達する前にカーネルから印刷されたメッセージを食べています。console=tty1 loglevel=9私のカーネルコマンドラインで。 tty1でAlt++SysRqを押してもhgo Fishingを手動で使用するまで何も起こらないようでしたdmesg | tail

(編集:)メッセージを有効にするために使用するために提案された説明setterm。私はこれが顕著な影響を与えないという事実に驚きました。

systemdのロギングを再設定する必要があるようです。どこから始めるべきかわかりません。


詳細/背景:

私のラップトップ(古いですが、まだ役に立つThinkPad T400)は、一時停止から再起動したときにランダムにロックすることを決めます。 ACPIウェイクアップがうまく機能し、ビデオを再起動し、バックライトがうまく機能し、キーボードが機能し、コンソール間の切り替え(Xを開くことに注意する限り)が機能し、さらにttyが機能するようにスクロールすることも機能しますが。 ..ユーザースペースはまだ停止します。

睡眠の私の理解は...

# echo mem > /sys/power/state
(...)
t400 kernel: Freezing user space processes ... (elapsed 0.047 seconds) done.
(...)
t400 kernel: smpboot: CPU 1 is now offline
<system is asleep>
<I open the lid!>
t400 kernel: ACPI: Low-level resume complete
(...)
t400 kernel: Restarting tasks ... done.
(...)
# echo ohi
ohi
# _

...かなりの数のスリープ - >再開プロセスの場合、ユーザースペース/作業が停止され、一時停止 - >スリープ - >ウェイクアップ - >再開サイクルを妨げることはありません。

ベストアンサー1

システムsystemd-sysctl.serviceサービスすべての「Magic SysRq」機能を無効にします。s(同期化)を除いて。どこかに/etc/sysctl.d/高い優先順位の書き換え設定を提供する必要があります。

console=tty1必ずしもアクティブKVTである必要はない最初のカーネル仮想端末にのみ出力されます。当時何が起こっても常にアクティブKVTに出力するにはを使用してくださいconsole=tty0

追加読書

おすすめ記事