Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

En Linux, es posible que el servidor de lenguaje de Devin Desktop no se inicie y muestre un error que incluye “no space left on device”, incluso cuando el sistema tiene mucho espacio libre en disco. Esto ocurre porque se han agotado los límites de inotify watch o inotify instance del kernel de Linux, no por el uso real del disco. El servidor de lenguaje usa inotify para supervisar los archivos de tu espacio de trabajo en busca de cambios. Cuando se alcanza el límite del kernel, el sistema devuelve un error ENOSPC, que normalmente aparece como “no space left on device.”

Síntomas

Puede ver lo siguiente en los logs de salida de Devin Desktop:
Language server failed - no space left on device: no space left on device
Suele ir acompañado de stack traces que hacen referencia a componentes como:
  • file_watcher
  • AddTrackedWorkspace
  • AddDirectoriesRecursive
Comportamiento que normalmente observarás:
  • Devin Desktop se abre con normalidad
  • El servidor de lenguaje se cierra inmediatamente después de iniciarse
  • Las funcionalidades que dependen del servidor de lenguaje (p. ej., Cascade, autocompletado) no funcionan

Diagnóstico

1. Verifica los límites actuales de inotify

Ejecuta los siguientes comandos:
# Verificar el número máximo de inotify watches por usuario
cat /proc/sys/fs/inotify/max_user_watches

# Verificar el número máximo de instancias de inotify por usuario
cat /proc/sys/fs/inotify/max_user_instances
Los valores predeterminados habituales son 8192 para watches y 128 para instancias. A menudo, estos valores son demasiado bajos para usar un IDE en espacios de trabajo grandes (especialmente monorepos) y otros procesos que consumen recursos de inotify (contenedores, herramientas de sincronización, otros editores y servicios en segundo plano) pueden reducirlos aún más.

2. Comprueba cuántas instancias de inotify se están usando actualmente

find /proc/*/fd -lname anon_inode:inotify 2>/dev/null | wc -l
Si esta cantidad está cerca de tu max_user_instances (o lo supera), es posible que los nuevos usuarios de inotify (como el servidor de lenguaje) no puedan inicializarse.

Solución

Aumenta los límites de inotify. Puedes aplicar los cambios temporalmente (hasta reiniciar el sistema) o de forma permanente.

Solución temporal (hasta el reinicio)

sudo sysctl fs.inotify.max_user_watches=524288
sudo sysctl fs.inotify.max_user_instances=1024

Corrección permanente (persiste tras reiniciar)

echo "fs.inotify.max_user_watches=524288" | sudo tee -a /etc/sysctl.conf
echo "fs.inotify.max_user_instances=1024" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
Después de aplicar cualquiera de las dos soluciones, reinicia Devin Desktop. El servidor de lenguaje debería iniciarse correctamente. Esta es una limitación bien conocida en Linux que afecta a otros IDE y herramientas de desarrollo que dependen de monitores de archivos. Si tu organización gestiona la configuración del sistema de forma centralizada, pide a tu equipo de TI o infraestructura que aplique estos ajustes de sysctl.

Cuándo usar cada valor

  • fs.inotify.max_user_watches=524288 Recomendado para repositorios grandes o monorepos. Cada archivo/directorio monitorizado consume memoria del kernel (a menudo ~1 KB por watch en sistemas de 64 bits), por lo que 524288 watches pueden usar aproximadamente ~512 MB de memoria del kernel.
  • fs.inotify.max_user_instances=1024 Recomendado si ejecutas múltiples aplicaciones que crean instancias de inotify (múltiples ventanas del IDE, contenedores, herramientas de sincronización de archivos, etc.). El valor predeterminado de 128 puede agotarse rápidamente en entornos de desarrollo.