Иноды и ошибка «No space left on device»
Инод (inode) — это структура данных, которую файловые системы в стиле Unix используют для хранения информации о файле, такой как владелец, права доступа, размер и расположение данных. Каждый файл использует один инод, а во многих файловых системах их количество фиксировано, поэтому миллионы крошечных файлов могут вызвать ошибку «No space left on device», даже если df -h показывает наличие свободного места.
1Как это проверить
Команда df -i выводит общее количество, использованные и свободные иноды для каждой файловой системы. ls -i показывает номер инода файла, а stat <file> — подробную информацию о нем.
2Типичные причины
Директории сессий или кэша веб-приложений, очереди почтовых сообщений, неротированные мелкие лог-файлы и кэши сборок могут создавать миллионы файлов.
3Поиск директории
GNU du умеет считать иноды: du --inodes -x / | sort -n | tail выводит директории с наибольшим количеством записей.
Как исправить исчерпание инодов
- Подтверждение:
df -i(IUse% близко к 100%). - Поиск директории:
sudo du --inodes -x --max-depth=3 / | sort -n | tail -20 - Прежде чем что-либо удалять, проверьте, какой процесс создает эти файлы.
- Удалите старые файлы приложения с помощью его собственных инструментов или команды find, например:
find /path -type f -mtime +7 -deleteпосле предварительного запуска без ключа -delete.
Осторожно
- Всегда сначала запускайте find без -delete и просматривайте список.
- Количество инодов в ext4 фиксируется при создании файловой системы.
Связанные статьи
- df (disk free)Как читать вывод команды df, почему Use% может достичь 100%, когда Avail еще не равен нулю для обычных пользователей, и как проверить иноды с помощью df -i.
- Поиск больших и старых файлов с помощью findКак использовать find для вывода списка больших или старых файлов в Linux, их безопасного предварительного просмотра и удаления только проверенных данных.
- Использование диска с помощью du и ncduКак найти, что заполняет диск в Linux с помощью du и интерактивной утилиты ncdu, используя параметры для ограничения поиска одной файловой системой.
Источники
Последняя проверка: