lsof
19 commands
19 shown
Открытые файлы процесса
Все файлы (сокеты, обычные, пайпы) открытые процессом nginx
lsof -p $(pgrep nginx) | head -30
Кто использует порт
Найти процесс слушающий порт 8080
lsof -i :8080
Все сетевые соединения
Все открытые сетевые соединения без DNS разрешения
lsof -i -n -P
Открытые файлы на ФС
Все процессы с открытыми файлами в /var/log
lsof +D /var/log
Удалённые файлы ещё открытые
Файлы удалённые но ещё занятые процессами (утечка диска)
lsof | grep '(deleted)'
ss: слушающие сокеты
TCP порты в режиме прослушивания с именами процессов
ss -tlnp
ss: все TCP соединения
Фильтр установленных TCP соединений с информацией о процессах
ss -tanp | grep ESTAB
ss: UDP сокеты
UDP порты в режиме прослушивания с именами процессов
ss -ulnp
ss: сводная статистика сокетов
Сводка использования сокетов по состоянию
ss -s
ss: фильтр по порту назначения
Показать соединения к порту 443
ss -tnp dst :443
Найти владельца порта
Показывает, какой процесс занимает порт; -nP отключает резолв DNS и имён сервисов для скорости
lsof -nP -i :<port>
Все слушающие сокеты
Список всех TCP-листенеров с PID, без резолва имён; modern: ss -ltnp
lsof -nP -iTCP -sTCP:LISTEN
Удалённые открытые файлы
Находит удалённые, но ещё открытые файлы, занимающие диск; df полон, а du нет
lsof +L1
Кто держит файл перед umount
Показывает процессы, мешающие umount c 'device busy'; передайте путь точки монтирования
lsof /mnt/<name>
Освободить занятый порт
Убивает процесс на порту; -t выводит чистые PID, -r не запускает kill на пустом вводе
lsof -t -i:<port> | xargs -r kill
Поиск утечек CLOSE_WAIT
Показывает сокеты, которые приложение забыло закрыть; рост CLOSE_WAIT = утечка fd/соединений
lsof -nP -i -sTCP:CLOSE_WAIT
Соединения к удалённому хосту
Показывает только сокеты, общающиеся с конкретным хостом/портом, по обоим концам
lsof -nP -i @<host>:<port>
Бинарь и библиотеки процесса
Показывает только исполняемый код и библиотеки; -a объединяет фильтры по И, удобно после деплоя
lsof -p <pid> -a -d txt,mem
Подсчёт открытых fd процесса
Быстрый подсчёт fd для поиска утечек против ulimit -n; быстрее: ls /proc/<pid>/fd | wc -l
lsof -nP -p <pid> | wc -l
no commands match