278 votes

Erreur Nodemon : La limite du système pour le nombre de surveillants de fichiers est atteinte

J'apprends graphql et en utilisant prisma-binding pour les opérations de graphql. Je suis confronté à ceci nodemon lorsque je démarre mon serveur node et qu'il me donne le chemin du fichier de schéma qui est généré automatiquement par un système de gestion des données. graphql-cli . Quelqu'un peut-il me dire à quoi correspond cette erreur ?

Erreur :

Internal watch failed: ENOSPC: System limit for number of file watchers reached, watch '/media/rehan-sattar/Development/All projects/GrpahQl/graph-ql-course/graphql-prisma/src/generated

0 votes

C'est l'erreur linux ulimit voir ici stackoverflow.com/questions/34588/

0 votes

J'ai essayé ça ! J'obtiens à nouveau la même erreur !

2 votes

Vous regardez probablement trop de fichiers. Peut-être inclut-il également le répertoire nod_modules ?

4voto

alramdein Points 423

Dans mon cas, pendant que j'exécute la commande nodemon sur le serveur Linux. J'ai mon VSCode ouvert (SSH au serveur). Donc, en me basant sur la réponse de @Juri Sinitson, je ferme simplement le VSCode et j'exécute à nouveau la commande nodemon. Et cela fonctionne.

Ma commande nodemon : nodemon server.js via npm start

3voto

Nick Bull Points 6359

Il peut être difficile de savoir de combien il faut augmenter le nombre d'observateurs. Voici donc un utilitaire pour doubler le nombre de surveillants :

function get_inode_watcher_count() {
  find /proc/*/fd -user "$USER" -lname anon_inode:inotify -printf '%hinfo/%f\n' 2>/dev/null | 
  xargs cat | 
  grep -c '^inotify'
}

function set_inode_watchers() {
  sudo sysctl -w fs.inotify.max_user_watches="$1"
}

function double_inode_watchers() {
  watcher_count="$(get_inode_watcher_count)"
  set_inode_watchers "$((watcher_count * 2))"

  if test "$1" = "-p" || test "$1" = "--persist"; then
    echo "fs.inotify.max_user_watches = $((watcher_count * 2))" > /etc/sysctl.d/10-user-watches.conf
  fi
}

# Usage
double_inode_watchers
# to make the change persistent
double_inode_watchers --persist

-4voto

Sous Linux, j'ai déjà utilisé sudo. sudo npm start

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X