Powyższe odpowiedzi działają świetnie, ale nie wyjaśnia, dlaczego tu się rozejrzałem, moja próba uzyskania pełnej odpowiedzi -
Dlaczego?
Programy synchronizujące pliki, takie jak dropbox, git itp., Używają inotify do zauważenia zmian w systemie plików. Limit można zobaczyć przez -
cat /proc/sys/fs/inotify/max_user_watches
Dla mnie pokazuje 100000 . Gdy ten limit nie wystarczy do monitorowania wszystkich plików w katalogu, zgłasza ten błąd.
Zwiększanie liczby obserwatorów inotify (wersja skrócona):
Jeśli korzystasz z Debiana, RedHata lub innej podobnej dystrybucji Linuksa , uruchom następujące polecenie w terminalu:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Jeśli korzystasz z ArchLinux , uruchom zamiast tego następujące polecenie (zobacz tutaj, dlaczego):
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
Następnie wklej go do terminala i naciśnij klawisz Enter, aby go uruchomić.
Szczegóły techniczne:
Listen używa domyślnie inotify w systemie Linux do monitorowania katalogów pod kątem zmian. Często zdarza się, że system ogranicza liczbę plików, które można monitorować. Na przykład limit informowania Ubuntu Lucid (64-bitowy) jest ustawiony na 8192.
Możesz uzyskać bieżący limit oglądania pliku inotify, wykonując:
$ cat /proc/sys/fs/inotify/max_user_watches
Jeśli ten limit nie wystarczy do monitorowania wszystkich plików w katalogu, należy go zwiększyć, aby funkcja Listen działała poprawnie.
Możesz ustawić nowy limit tymczasowy za pomocą:
$ sudo sysctl fs.inotify.max_user_watches=524288
$ sudo sysctl -p
Jeśli chcesz ustawić swój limit na stałe, użyj:
$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
$ sudo sysctl -p
Być może będziesz musiał zwrócić uwagę na wartości max_queued_events i max_user_instances, jeśli Listen nadal narzeka.
Źródło: https://github.com/guard/listen/wiki/Increase-the-amount-of-inotify-watchers