lsof - デバッグ出力情報

lsof - デバッグ出力情報

このウェブサイトの閲覧に問題があります。存在するこれ特別な問題は、lsofコマンドが特定のユーザーに対して開いているファイルを一覧表示するために使用されることを示しています。端末で次のコマンドを実行しました。

lsof -a -u root -d txt

非常に長い出力が表示されますが、これは(少なくとも私にとっては)まったく関係ありません。生成された出力を理解するのは難しいです。これは

mapping-d  3992 root txt       REG    8,5    29728 7169187 /usr/libexec/mapping-daemon
clock-app  4005 root txt       REG    8,5    88048 7169216 /usr/libexec/clock-applet
mixer_app  4007 root txt       REG    8,5    53484 7169197 /usr/libexec/mixer_applet2
gnome-scr  4078 root txt       REG    8,5   168628 1337742 /usr/bin/gnome-screensaver
notificat  4081 root txt       REG    8,5    34732 1324168 /usr/libexec/notification-daemon
gnome-ter  4219 root txt       REG    8,5   309400 1318348 /usr/bin/gnome-terminal
gnome-pty  4221 root txt       REG    8,5    12384 1899888 /usr/lib/vte/gnome-pty-helper
bash       4222 root txt       REG    8,5   735932  196459 /bin/bash
firefox   15551 root txt       REG    8,5   121288 2424613 /usr/lib/firefox/firefox
npviewer. 15790 root txt       REG    8,5   174364 1996912 /usr/lib/nspluginwrapper/npviewer.bin
bash      15908 root txt       REG    8,5   735932  196459 /bin/bash
lsof      16014 root txt       REG    8,5   129820 1323233 /usr/sbin/lsof
lsof      16015 root txt       REG    8,5   129820 1323233 /usr/sbin/lsof

私がオープンすると期待txtファイルはユーザー、実行すると、そのファイルに関する情報のみが表示されます。ラソフ注文する。誰かがこのコマンドが実際に生成する出力を理解するのに役立ちますか?

答え1

出力は列で構成されます。後で見るためにこの出力をファイルに保存するには、次の手順を実行します。

$ lsof -a -u root -d txt > somefile.txt

この列はすぐ上部にあります。

COMMAND     PID USER  FD      TYPE DEVICE SIZE/OFF    NODE NAME

列の説明

列は次のとおりです。

COMMAND     PID USER  FD      TYPE DEVICE SIZE/OFF    NODE NAME
mapping-d  3992 root txt       REG    8,5    29728 7169187 /usr/libexec/mapping-daemon
clock-app  4005 root txt       REG    8,5    88048 7169216 /usr/libexec/clock-applet
mixer_app  4007 root txt       REG    8,5    53484 7169197 /usr/libexec/mixer_applet2
  • 注文する- そのファイルを使用している実行可能ファイルの名前。

  • PID- 実行可能ファイルのプロセスIDであるプロセスID。コマンドの出力でもこれらの内容を見ることができますps

  • ユーザー- このプロセスが所有するユーザーID。

  • FD- ファイル記述子。テキストファイル記述子()のみを使用するように指定したので、この列にはその内容のみを-d txt表示する必要があります。 「txtプログラムテキスト(コードとデータ)」のマニュアルページtxtからlsof

  • タイプ– ファイルに関連するノードのタイプを示します。マニュアルページをもう一度確認してくださいlsof。ノードにはさまざまな種類があります。ここでは主に一般ファイルを扱うため、キーワードが表示されますREG

  • 装備- この列にはデバイス番号が含まれています。これはシステムディレクトリの特定のファイルに対応するデバイスです/dev

  • サイズ/仕上げ- ファイルサイズまたはファイルオフセット(バイト)。

  • - マニュアルページを参照してくださいlsof。通常、ローカルファイルのノード番号またはサーバーホスト上のNFSファイルのinode番号ですが、他の値にすることもできます。

  • 名前- ファイル名またはファイルがあるマウントポイントとファイルシステムの名前。

答え2

lsof何らかの方法でプログラムがアクセスするすべてのファイルを一覧表示します。 4番目の列(FD)は、プログラムがファイルにアクセスする方法を説明します。以下はいくつかの一般的なシナリオです(他のシナリオもあります)。

  • 数値:プロセスによってファイルが開き、数値はファイル記述子です。ファイル名の後の文字は、オープンモード(r読み取り専用、w書き込み専用、u両方)を表します。
  • cwd:このファイルはプロセスの現在の作業ディレクトリです。
  • txt:このファイルはプロセスの実行可能ファイルです。
  • mem: ファイルがプロセスの仮想メモリ空​​間にマップされます。

記述子の種類txtは、人間が読めるテキストです.txt。ここで、「テキスト」は、次のような実行可能コードを指す奇妙な用語です。テキストセグメントコードを含む実行可能ファイルの一部です。この奇妙な名前はUnix以前のプログラミングコミュニティ(General Electric、Unixの世界でもう一つの命名遺産は」GECOSフィールド")。

したがって、あなたが見るのは各プロセスの主な実行可能ファイルです。

関連情報