Lsof

This quick reference cheat sheet provides various for using lsof command.

#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)