lsof
- プロセスが開いているファイルを確認する、プロセス情報
オプション | 用途 |
---|---|
-a | AND オプション |
-c | 指定した名前のプロセス情報表示 |
-i | Listen しているポートを出力 |
lsof -i :22 | ポート 22 を表示 |
lsof -i :22,80 | ポート 22 or 80 を表示 |
lsof -i :http | プロセス名でも指定可能 |
lsof -i @192.168.122.1 | インタフェース指定 |
-n | 名前解決を行わない |
-p | プロセス ID 指定 lsof -p 1234, lsof -p pgrep -n httpd |
-u | ユーザ指定 |
ファイルを開いているプロセス情報の表示
# lsof /var/log/messages COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME rsyslogd 1166 root 4w REG 253,0 33064 266758 /var/log/messages
個々のプロセスが掴んでいるファイル・デバイス・ポートを表示
# lsof -i -n | grep ESTABLISHED COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 17652 root 3r IPv4 1882123 0t0 TCP 15.19.13.1:down->11.22.33.44:61376 (ESTABLISHED) sshd 17654 root 3u IPv4 1882123 0t0 TCP 15.19.13.1:down->11.22.33.44:61376 (ESTABLISHED)
オープンしているポートをチェック(sshd)
# lsof -Pi | grep LISTEN | grep sshd sshd 1073 root 3u IPv4 9316 0t0 TCP *:22 (LISTEN)* sshd 1073 root 4u IPv6 9318 0t0 TCP *:22 (LISTEN)*
- lsof の結果のグラフ化
事前に下記を install
# yum install graphviz
execute
# lsof -n -F | ./lsofgraph | unflatten -l 1 -c 6 | dot -T jpg > test.jpg