531 Stimmen

Grunt-Uhrfehler - Warten...Schwerwiegender Fehler: Uhr ENOSPC

Warum erhalte ich den Warten...Schwerwiegender Fehler: watch ENOSPC, wenn ich die Watch-Aufgabe ausführe? Wie löse ich dieses Problem?

1374voto

kds Punkte 27579

Nach einiger Recherche habe ich die Lösung gefunden. Führen Sie den folgenden Befehl aus.

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Fügen Sie für Arch Linux diese Zeile zu /etc/sysctl.d/99-sysctl.conf hinzu:

fs.inotify.max_user_watches=524288

190voto

grenade Punkte 30103

Jedes Mal, wenn Sie sudo etwas ausführen müssen..., um etwas zu reparieren, sollten Sie innehalten und überlegen, was los ist. Während die akzeptierte Antwort hier vollkommen gültig ist, behandelt sie eher das Symptom als das Problem. So etwas wie größere Satteltaschen zu kaufen, um das Problem zu lösen: Fehler, kann nicht mehr Müll auf das Pony geladen werden. Das Pony hat bereits so viel Müll geladen, dass es vor Erschöpfung zusammenbricht.

Als Alternative (vielleicht vergleichbar damit, überschüssigen Müll vom Pony zu nehmen und auf der Mülldeponie abzulegen), führen Sie aus:

npm dedupe

Dann beglückwünschen Sie sich selbst dafür, dass Sie das Pony glücklich gemacht haben.

38voto

Arne L. Punkte 2015

Nachdem Sie die Antwort von Grenade ausprobiert haben, können Sie ein temporäres Fix verwenden:

sudo bash -c 'echo 524288 > /proc/sys/fs/inotify/max_user_watches'

Dies bewirkt dasselbe wie die Antwort von kds, jedoch ohne die Änderungen dauerhaft zu speichern. Dies ist nützlich, wenn der Fehler nur nach einer gewissen Betriebszeit Ihres Systems auftritt.

8voto

Michael Lewis Punkte 4222

Um herauszufinden, wer inotify-Instanzen erstellt, versuchen Sie diesen Befehl (Quelle):

for foo in /proc/*/fd/*; do readlink -f $foo; done | grep inotify | sort | uniq -c | sort -nr

Meins sah so aus:

 25 /proc/2857/fd/anon_inode:inotify
  9 /proc/2880/fd/anon_inode:inotify
  4 /proc/1375/fd/anon_inode:inotify
  3 /proc/1851/fd/anon_inode:inotify
  2 /proc/2611/fd/anon_inode:inotify
  2 /proc/2414/fd/anon_inode:inotify
  1 /proc/2992/fd/anon_inode:inotify

Verwenden von ps -p 2857, konnte ich Prozess 2857 als sublime_text identifizieren. Erst nachdem ich alle Sublime-Fenster geschlossen hatte, konnte ich mein Node-Skript ausführen.

3voto

Aaron Punkte 1993

Ich bin auf diesen Fehler gestoßen, nachdem der Client-PC abgestürzt ist, das jest --watch Kommando, das ich auf dem Server ausgeführt habe, bestand weiterhin und ich habe versucht, jest --watch erneut auszuführen.

Die Ergänzung zu /etc/sysctl.conf, die in den obenstehenden Antworten beschrieben wurde, hat dieses Problem umgangen, aber es war auch wichtig, meinen alten Prozess über ps aux | grep node und kill zu finden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X