Linuxでは、Ctrl+ Alt+ F1またはCtrl+ Alt+ F2を押すたびにメッセージを表示し、その後Ctrl+ Alt+を押してGUIモードに切り替える代わりに、GUIモードでテキストモード端末に表示されるエラーメッセージを表示できますか?F7?
ありがとうございました。
Linuxでは、Ctrl+ Alt+ F1またはCtrl+ Alt+ F2を押すたびにメッセージを表示し、その後Ctrl+ Alt+を押してGUIモードに切り替える代わりに、GUIモードでテキストモード端末に表示されるエラーメッセージを表示できますか?F7?
ありがとうございました。
回答:
/dev/tty1
ファイルでテキストコンソールの現在の内容を確認できます/dev/vcs1
(1はCtrl+ Alt+の数字ですF1)。(から読み取ろ/dev/tty1
うとすると、キーボード入力についてそこで実行されているプログラムと競合します。)通常、vcsデバイスはrootのみが読み取り可能です。スナップショットを取得します。コンテンツを入手するための便利な方法はありません。
ttysnoopのプログラムを使用すると、(X端末を含む)、別の端末からのコンソール上のトラフィックを監視することができます。しかし、これは事前に設定する必要があるものです。
メッセージがテキストコンソールに出力されたときにメッセージをキャッチする代わりに、メッセージを別の場所に送信するように手配します。そのようなコンソール出力のほとんどは、システムログのの下のファイルに記録されます/var/log
。X(つまり、グラフィカルモード)ではxconsole
、標準のXディストリビューションの一部であるでこれらのメッセージをキャッチできます。
xconsole
希望するメッセージが表示されない場合は、質問を編集して、これらのメッセージの送信元を記載してください。
xconsole
メッセージを表示できない場合は、質問を編集して、正確なオペレーティングシステム、実行した構成手順、表示されたエラーメッセージを含めます。
メッセージがシステムロギング機能からではなく、テキストモードコンソールで開始したプログラムからのものである場合は、リダイレクションを使用するほうが適切です。次のようにプログラムを開始するように準備します。
mv ~/.myprogram.log ~/.myprogram.log.old
myprogram --with arguments 2>&1 >~/.myprogram.log
次に、ファイルを調べて、どこからでもプログラムの出力を読み取ることができます~/.myprogram.log
。特に、ファイルがリアルタイムで拡大するのを見るには、
tail -n +1 -f ~/.myprogram.log
X起動スクリプトでプログラムを起動する場合は、X起動シーケンス全体の出力をファイルにリダイレクトすることをお勧めします。実際、多くのディストリビューションはこれを自動的に行います。.xinitrc
または.xsession
ファイルを使用している場合は、次の行をファイルの先頭近くに配置して、後続のプログラムからの出力をリダイレクトします。
exec >"$HOME/.xsession-$DISPLAY.log" 2>&
これにはxconsoleを使用できます。その説明から:
xconsoleプログラムは、通常/ dev / consoleに送信されるメッセージを表示します。
ディストリビューションが選択した構成に応じて、ルートとして(つまり、sudo xconsole
それぞれを使用してsu -c xconsole
)起動する必要がある場合があります。