| Anterior | Siguiente |
| ENODEV | EISDIR |
ENOTDIR
Qué significa ENOTDIR
ENOTDIR es más específico que «ruta no encontrada». Para continuar resolviendo una ruta, cada componente intermedio debe ser un directorio. Si uno de ellos es un archivo regular, dispositivo u otro objeto que no admite componentes hijos, la resolución se detiene con este error. Las API de la familia *at también pueden devolverlo si reciben un dirfd de tipo incorrecto.
Una barra final es otra pista útil: expresa que el último componente debe ser un directorio. Si existe un archivo con ese nombre, la ruta puede producir ENOTDIR precisamente porque el objeto existe pero tiene el tipo equivocado.
Qué comprobar
- Descompón la ruta y localiza el primer componente que no sea un directorio.
- Revisa variables de entorno o configuración que puedan haber sustituido una ruta de directorio por una ruta de archivo.
- Con
openat(),renameat()y similares, verifica que eldirfdes válido y apunta a un directorio. - No crees directorios automáticamente hasta entender qué tipo de objeto esperaba realmente la aplicación.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.