Системный Администратор | Sysadmin Windows & Linux Server. Настройка Сети, ПК и Железа. IT Уроки для Сисадмина: Безопасность, Софт и Техподдержка (Helpdesk). Компьютерная помощь.
📂 Как найти количество открытых файлов в Linux
🔹 Проверка общего количества открытых файлов:
lsof | wc -l
- lsof — выводит список всех открытых файлов.
- wc -l — считает количество строк (то есть файлов).
🔹 Количество открытых файлов процессом:
lsof -p <PID> | wc -l
- <PID> — ID интересующего процесса.
✅ Чтобы узнать PID процесса:
ps aux | grep <имя_процесса>
🔹 Использование /proc:
ls /proc/<PID>/fd | wc -l
- /proc/<PID>/fd — каталог с дескрипторами открытых файлов процесса.
🔹 Сводка по всему серверу через /proc:
ls /proc/*/fd 2>/dev/null | wc -l
- Показывает общее количество всех открытых файлов на сервере.
🔹 Ограничения (лимиты) на количество открытых файлов:
- Для текущей сессии:
ulimit -n
- Системные лимиты:
cat /proc/sys/fs/file-max
- Использование и максимальное значение:
cat /proc/sys/fs/file-nr
Расшифровка file-nr:
- 1-е число — открытые дескрипторы файлов,
- 2-е число — дескрипторы в очереди освобождения,
- 3-е число — максимальное количество дескрипторов.
🔹 Проверка лимитов процесса:
cat /proc/<PID>/limits | grep "open files"
⚙️ Быстрые советы:
- Если приближается к лимиту — увеличивайте значение через /etc/security/limits.conf.
👉 @i_odmin