Lsof


Getting Started

Introduction

lsof meaning LiSt Open Files is used to find out which files are open by which process

$ lsof
$ sudo lsof -u root

Port-specific

$ lsof -i :8080
$ lsof -i :80 -i :22
$ lsof -i TCP:22
$ lsof -i TCP:1-1024
$ lsof -i UDP
$ lsof -i @192.168.1.5

Process-specific

$ lsof -c mysql
$ lsof -c java
$ lsof -c ssh
$ lsof -c nginx
$ lsof -c ssh -c httpd

User-specific

$ lsof -u www-data
$ lsof -u www-data -u ubuntu
$ lsof -i -u ^root # Except certain user

Network-specific

$ lsof -i 4   # IPv4 only
$ lsof -i 6   # IPv6 only

PID-specific

$ lsof -p 1753
$ lsof -p ^3  # Except certain pids

Filename-specific

$ lsof /var/log/messages
$ lsof /etc/passwd

Directory-specific

$ lsof +D /var/log # Within a directory

Kill

$ kill -9 `lsof -t -u apache`
$ kill -9 $(lsof -t -i :8080)