Open1
lsofコマンド
概要
特定のファイル、サービス、ポート番号をなどを使っているプロセスを特定することができる
例
WEBサーバーのアクセスログ「dev.menta.me.access.log」を使っているプロセスのPIDを特定する
[root@dev-vagrant ~]# lsof -t /var/log/nginx/dev.menta.me.access.log
19316
19317
ポート番号80を使っているプロセスを特定する
[root@dev-vagrant ~]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 19316 root 9u IPv4 81609 0t0 TCP *:http (LISTEN)
nginx 19317 nginx 9u IPv4 81609 0t0 TCP *:http (LISTEN)
サービスsshを使っているプロセスを特定する
[root@dev-vagrant ~]# lsof -i:ssh
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1056 root 3u IPv4 16398 0t0 TCP *:ssh (LISTEN)
sshd 1056 root 4u IPv6 16407 0t0 TCP *:ssh (LISTEN)
sshd 24814 root 3u IPv4 185079 0t0 TCP dev-vagrant:ssh->192.168.56.1:53869 (ESTABLISHED)
sshd 24816 menta 3u IPv4 185079 0t0 TCP dev-vagrant:ssh->192.168.56.1:53869 (ESTABLISHED)
sshd 25667 root 3u IPv4 223182 0t0 TCP dev-vagrant:ssh->192.168.56.1:52422 (ESTABLISHED)
sshd 25669 menta 3u IPv4 223182 0t0 TCP dev-vagrant:ssh->192.168.56.1:52422 (ESTABLISHED)
ユーザmentaが使っているプロセスIDを特定する
[root@dev-vagrant ~]# lsof -u menta
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 24816 menta cwd DIR 8,1 275 64 /
sshd 24816 menta rtd DIR 8,1 275 64 /
sshd 24816 menta txt REG 8,1 852888 652758 /usr/sbin/sshd
sshd 24816 menta mem REG 8,1 15488 67226480 /usr/lib64/security/pam_lastlog.so