Lsof

lsof（エルエスオーエフ）コマンドは"list open files"の意味であり、多くのUnix系オペレーティングシステムで、オープン中のファイルやそのファイルをオープンしているプロセスのリストを出力するコマンドである。このオープンソースのユーティリティは、パデュー大学コンピューティングセンターの元アソシエートディレクター、ビクター・A・アベルによって開発・サポートされた。lsofはいくつかのUnix系OSで動作し、サポートされている。
例.
オープン中のファイルには、すべてのプロセスがオープンしているディスク上のファイル、名前付きパイプ、ネットワークソケット、デバイスが含まれる。使用例の1つとしては、（特定できない何らかの）ファイルが使用中のであるために、ディスクがアンマウントできない時である。オープン中のファイルの一覧を確認することで（必要に応じてフィルタをかけることで）ファイルを使用しているプロセスを特定することができる。
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
syslogd 350 root 5w VREG 222,5 0 440818 /var/adm/messages
syslogd 350 root 6w VREG 222,5 339098 6248 /var/log/syslog
cron 353 root cwd VDIR 222,5 512 254550 /var -- atjobs
特定のデーモンに関連づけられているポートを確認するには、次のようにする。
sendmail 31649 root 4u IPv4 521738 TCP *:25 (LISTEN)
上のコマンドの実行結果より、「sendmail」が標準ポート "25" 版をlistenしていることが確認できる。
他には、codice_4を使用すれば、Unixソケットを一覧することもできる。
lsofの出力.
lsofの出力は以下の内容を表している。