Red Hat 仮想マシンを使用しており、リモートでのみアクセスできます。しかし、このコマンドを使用するときにtop
最もメモリを消費するプロセスの1つは/usr/lib64/firefox-3.0.18/firefox
。
これらのプロセスを表示せずにどのように起動し、一部のプロセスで実際に使用できますか?どのプロセスがそれを使用しているかを確認する方法はありますか?
ベストアンサー1
Firefoxを表示するにはXが必要です。実行しているコンピュータの物理モニタである必要はありません。リモートモニターまたは仮想モニターです。
それがどこに現れるかを知りたい場合は、DISPLAY
Firefoxプロセスの環境変数を見てください。ルートである必要があります(より正確には、Firefoxプロセスを実行するユーザーの権限が必要です)。
</proc/$pid/environ grep -z '^DISPLAY='
:NUMBER
値がコロンで始まる形式の場合、Xサーバーはローカルサーバーです。/tmp/.X11-unix/XNUMBER
たとえば、/tmp/.X11-unix/X42
という名前のソケットがありますDISPLAY=:42
。とマークされている場合、:NUMBER1.NUMBER2
この.NUMBER2
部分は無視されます。その後、lsof /tmp/.X11-unix/X42
ソケットを開いたプロセスの1つがXサーバーです。これは仮想フレームバッファXサーバーです。wxyaまたは、リモートでフレームを表示するサーバーにすることもできます。仮想ネットワークコントローラまたはNX。
値がフォーマットの場合、host:NUMBER
Xディスプレイはリモートです。 X サーバーは、ポート 6000+NUMBER でリッスンするプロセスです。netstat -plnt | awk '$4 ~ ":" (6000 + NUMBER) "$"' {print $7}
そのポートでリッスンしているプロセスのPIDを表示するには、実行してください。 SSH接続でも構いません。