¿Qué significa el código errno 36 (ENAMETOOLONG) en Linux?

 
También puede significar:
ConstanteTipoSO
ERROR_SHARING_BUFFER_EXCEEDEDError de WindowsWindows
KERN_NOT_DEPRESSEDRetorno del kernel de macOSmacOS
ippStsNotSupportedCpuEstado de Intel IPPCualquiera
EINPROGRESSerrnomacOS
EIDRMerrnoSolaris
EDEADLKerrnoWindows
NTFS_FILE_SYSTEMCódigo BSODWindows
Anterior Siguiente
ENOMSG EINPROGRESS

ENAMETOOLONG

Qué significa ENAMETOOLONG

ENAMETOOLONG puede referirse a dos límites: un nombre individual demasiado largo o una ruta completa que excede lo que la interfaz puede resolver. Prefijos generados, extracción de archivos, árboles muy anidados, symlinks y concatenaciones repetidas pueden hacer fallar una ruta aunque cada nombre visible parezca razonable.

No conviene asumir que un único PATH_MAX compilado describe todos los filesystems y operaciones. El código portable debe evitar construir rutas sin límite y, cuando corresponda, consultar las restricciones del objeto real.

Qué comprobar

  • Registra longitud en bytes de la ruta original y de cada componente sin truncar el diagnóstico clave.
  • Busca prefijos generados, cache keys, nombres de archivos extraídos o joins de directorios repetidos.
  • Usa dirfds y API *at() cuando permitan evitar concatenar rutas absolutas enormes.
  • Para nombres deterministas generados, usa un mapeo corto resistente a colisiones en vez de recortar sufijos arbitrariamente.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.