Cóż, wydaje się, że rozwiązało to mój problem ... Ale jak? Dlaczego? Czy masz jakieś źródła, które wyjaśniają, co się dzieje (lub co się dzieje). A może sam to zrobisz? W każdym razie dzięki ...
slacktracer,
116
System ma ograniczenie liczby plików, które użytkownik może oglądać. Możesz szybko skończyć zegarki, jeśli Grunt działa z innymi programami, takimi jak Dropbox. To polecenie zwiększa maksymalną liczbę zegarków, jakie może mieć użytkownik.
Benjamin Manns
62
Dla Arch Linux dodać fs.inotify.max_user_watches=524288do /etc/sysctl.d/99-sysctl.conf, a następnie wykonać sysctl --system. Będzie to również obowiązywać podczas ponownego uruchamiania. Aby uzyskać więcej informacji: wiki.archlinux.org/index.php/Sysctl
wyjaśnienie:echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf zapisuje na końcu pliku /etc/sysctl.conf wiersz „fs.inotify.max_user_watches = 524288” sudo sysctl -p rekonfiguruje jądro w czasie wykonywania, ładując plik /etc/sysctl.conf jako parametr
kds
186
Za każdym razem, gdy musisz pobiec, sudo something ...aby coś naprawić, zatrzymaj się, aby pomyśleć o tym, co się dzieje. Chociaż przyjęta tutaj odpowiedź jest całkowicie poprawna, to raczej leczenie objawu niż problemu. Sortuj odpowiednik kupowania większych sakw, aby rozwiązać problem: błąd, nie można załadować więcej śmieci na kucyka. Kucyk ma już tyle śmieci, że kucyk zemdlał z wyczerpania.
Alternatywą (być może porównywalną do usuwania nadmiaru śmieci z kucyka i umieszczania go w śmietniku) jest uruchomienie:
Co to dokładnie robi? Z pewnością rozwiązało to mój problem. Dzięki @ granat
Arjun KR
4
Polecenie „npm dedupe” przechodzi przez drzewo modułów npm i przenosi każdy pakiet w górę drzewa tak bardzo, jak to możliwe. Rezultatem jest płaskie drzewo. Przenosi pakiet, nawet jeśli nie jest duplikowany. Możesz przeczytać więcej o tym, co dzieje się z różnymi wersjami modułów w tym przypadku, na docs.npmjs.com/cli/dedupe
Arun Reddy
1
to nie pomogło, próbowałem sudoi teraz działa dla mnie.
asedsami,
6
W moim przypadku moim problemem jest zainstalowanie Dropboksa, który wydaje się używać wielu zegarków. Musiałem więc użyć: fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -pjak w zaakceptowanej odpowiedzi, ale +1 za nauczenie mnienpm dedupe
To powinna być zaakceptowana odpowiedź, ponieważ problem jest naturalnie spowodowany tym, co się dzieje w tej chwili, a nie złą konfiguracją (patrz przykład „kucyka”).
arielnmz
7
Aby dowiedzieć się, kto tworzy instancje inotify , wypróbuj to polecenie ( źródło ):
for foo in /proc/*/fd/*; do readlink -f $foo; done | grep inotify | sort | uniq -c | sort -nr
Używając ps -p 2857, byłem w stanie zidentyfikować proces 2857 jako sublime_text. Dopiero po zamknięciu wszystkich wysublimowanych okien mogłem uruchomić skrypt węzła.
to samo dotyczy mnie dla vscode, ale myślę, że jest to również związane z zegarkami do plików
PCLUT
3
Wystąpił ten błąd po awarii komputera klienckiego, jest --watchpolecenie, które uruchomiłem na serwerze, pozostało i próbowałem uruchomić jest --watchponownie.
Dodatek /etc/sysctl.confopisany w powyższych odpowiedziach dotyczył tego problemu, ale ważne było również, aby znaleźć mój stary proces za pośrednictwem ps aux | grep nodei killto.
Rozwiązanie jest prawie takie samo (jeśli nie takie samo) jak zaakceptowane odpowiedzi, po prostu ma więcej wyjaśnień dla każdego, kto pojawi się tutaj po napotkaniu problemów z vs-code.
grunt
żadnego programu używającego inotify poniżej. Istnieje dobre wytłumaczenie na stronie unix.stackexchange.com/questions/13751/… .Odpowiedzi:
Po przeprowadzeniu niektórych badań znalazłem rozwiązanie. Uruchom poniższe polecenie.
W przypadku Arch Linux dodaj tę linię do /etc/sysctl.d/99-sysctl.conf:
źródło
fs.inotify.max_user_watches=524288
do/etc/sysctl.d/99-sysctl.conf
, a następnie wykonaćsysctl --system
. Będzie to również obowiązywać podczas ponownego uruchamiania. Aby uzyskać więcej informacji: wiki.archlinux.org/index.php/Sysctlnpm dedupe
wyjaśniono mi to. problemecho fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
zapisuje na końcu pliku /etc/sysctl.conf wiersz „fs.inotify.max_user_watches = 524288”sudo sysctl -p
rekonfiguruje jądro w czasie wykonywania, ładując plik /etc/sysctl.conf jako parametrZa każdym razem, gdy musisz pobiec,
sudo something ...
aby coś naprawić, zatrzymaj się, aby pomyśleć o tym, co się dzieje. Chociaż przyjęta tutaj odpowiedź jest całkowicie poprawna, to raczej leczenie objawu niż problemu. Sortuj odpowiednik kupowania większych sakw, aby rozwiązać problem: błąd, nie można załadować więcej śmieci na kucyka. Kucyk ma już tyle śmieci, że kucyk zemdlał z wyczerpania.Alternatywą (być może porównywalną do usuwania nadmiaru śmieci z kucyka i umieszczania go w śmietniku) jest uruchomienie:
Następnie pogratuluj sobie szczęścia.
źródło
sudo
i teraz działa dla mnie.fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
jak w zaakceptowanej odpowiedzi, ale +1 za nauczenie mnienpm dedupe
Po wypróbowaniu odpowiedzi granatu możesz użyć tymczasowej poprawki:
To robi to samo co odpowiedź kds , ale bez utrwalania zmian. Jest to przydatne, jeśli błąd pojawia się po pewnym czasie przestoju systemu.
źródło
Aby dowiedzieć się, kto tworzy instancje inotify , wypróbuj to polecenie ( źródło ):
Mój wyglądał tak:
Używając
ps -p 2857
, byłem w stanie zidentyfikować proces 2857 jakosublime_text
. Dopiero po zamknięciu wszystkich wysublimowanych okien mogłem uruchomić skrypt węzła.źródło
Wystąpił ten błąd po awarii komputera klienckiego,
jest --watch
polecenie, które uruchomiłem na serwerze, pozostało i próbowałem uruchomićjest --watch
ponownie.Dodatek
/etc/sysctl.conf
opisany w powyższych odpowiedziach dotyczył tego problemu, ale ważne było również, aby znaleźć mój stary proces za pośrednictwemps aux | grep node
ikill
to.źródło
W moim przypadku było to związane z działaniem kodu vs na moim komputerze z systemem Linux. Zignorowałem ostrzeżenie, które pojawiło się na temat obserwatora plików bla bla. Rozwiązanie znajduje się na stronie dokumentacji vs-code dla systemu Linux https://code.visualstudio.com/docs/setup/linux#_visual-studio-code-is-unable-to-watch-for-file-changes-in- this-large-workspace-error-enospc
Rozwiązanie jest prawie takie samo (jeśli nie takie samo) jak zaakceptowane odpowiedzi, po prostu ma więcej wyjaśnień dla każdego, kto pojawi się tutaj po napotkaniu problemów z vs-code.
źródło
W moim przypadku stwierdziłem, że mam agresywną wtyczkę do Vima, właśnie ją ponownie uruchomiłem.
źródło