| Предыдущий | Следующий |
| ENOSR | ENOSR |
ENAMETOOLONG
Найдите превышенное ограничение
ENAMETOOLONG не обязательно означает, что слишком длинным является только видимое имя файла. Ограничение может относиться к одному компоненту пути, полному пути, переданному интерфейсу, либо имени, сформированному после добавления префикса, промежуточного каталога, суффикса и разделителей.
Не обрезайте имена без сохранения уникальности и без учёта нормализации Unicode. Схема имён, устойчивая к коллизиям, должна заранее резервировать место для создаваемого суффикса, а код построения путей обязан проверять итоговую длину, а не только исходный идентификатор.
Диагностические данные
- Журналируйте полную длину переданного пути в байтах и длину каждого компонента после всех подстановок.
- Зафиксируйте файловую систему и точку монтирования, поскольку ограничения длины компонентов могут различаться между файловыми системами.
- Отличайте слишком длинный путь от
ELOOP; оба состояния возникают при поиске, но толькоELOOPсвязано с обходом символических ссылок.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.