リモートプリンタでページを印刷するプロセスが何であるか、STDINでどのように知ることができますか?

リモートプリンタでページを印刷するプロセスが何であるか、STDINでどのように知ることができますか?

一部のプロセスはコンソール出力をstdinリモートプリントサーバーに送信します。カッププリンタが設定されている場合は印刷されます。だからカップを無効にする必要があります。何かが実行されているlpようですlpr。通常、大規模プロジェクトをコンパイルした後、ある程度の時間が経過すると開始されます。

実行中のプロセスを見つける方法はありますか?

私が知っているのはカップページ内訳でその職業を見るだけだ。http://remote-print-server.example.com:631/:

ID        Name       User Size  Pages   State
foo-11612 (stdin)    user 1634k Unknown completed at Tue 06 Feb 2018 12:49:30 UTC

アップデート:これは配信に関するものです。プリンタがローカルに接続されていないため、stdinローカルログはありません。 :-(. 上記のテキストはカップネットワークログからコピーされました。journalctl

ベストアンサー1

コンソールが次のと仮定すると、デバイスを使用してファイル記述子を検索/dev/ttyS0できます。/proc/<pid>/fd

$ sudo ls -l /proc/[0-9]*/fd

その後、その出力から1 -> /dev/ttyS0(標準出力)または(標準エラー)を検索すると、2 -> /dev/ttyS0stdoutまたはstderr用のコンソールを使用してすべてのプロセスのIDを見つけることができます。

またはお持ちの場合は、lsof次のように使用できます。

$ sudo lsof /dev/ttyS0
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
agetty  3955 root    0u   CHR   4,64      0t0 4046 /dev/ttyS0
agetty  3955 root    1u   CHR   4,64      0t0 4046 /dev/ttyS0
agetty  3955 root    2u   CHR   4,64      0t0 4046 /dev/ttyS0

おすすめ記事