Bem, parece que resolveu meu problema ... Mas como? Por quê? Você tem alguma fonte que explique o que está acontecendo (ou estava acontecendo). Ou você pode fazê-lo? De qualquer forma, obrigado ...
slacktracer
116
O sistema tem um limite para quantos arquivos podem ser assistidos por um usuário. Você pode ficar sem relógios rapidamente se o Grunt estiver sendo executado com outros programas como o Dropbox. Este comando aumenta a quantidade máxima de relógios que um usuário pode ter.
Benjamin Manns
62
For Arch Linux adicionar fs.inotify.max_user_watches=524288a /etc/sysctl.d/99-sysctl.confe, em seguida, executar sysctl --system. Isso também persistirá nas reinicializações. Para obter mais detalhes: wiki.archlinux.org/index.php/Sysctl
explicação:echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf grava no final do arquivo /etc/sysctl.conf a linha "fs.inotify.max_user_watches = 524288" sudo sysctl -p reconfigura o kernel no tempo de execução, carregando o arquivo /etc/sysctl.conf como um parâmetro
kds
186
A qualquer momento que você precisar executar sudo something ...para corrigir algo, faça uma pausa para pensar no que está acontecendo. Embora a resposta aceita aqui seja perfeitamente válida, ela está tratando o sintoma e não o problema. É o equivalente a comprar alforjes maiores para resolver o problema de: error, não é possível carregar mais lixo no pônei. O pônei já carrega tanto lixo que está desmaiando de exaustão.
Uma alternativa (talvez comparável a retirar o excesso de lixo do pônei e colocar no lixão) é executar:
O que exatamente isso faz? Isso resolveu meu problema com certeza. Obrigado @grenade
Arjun KR
4
O comando 'npm dedupe' percorre sua árvore de módulos npm e move todos os pacotes para cima na árvore o máximo possível. O resultado é uma árvore plana. Move um pacote mesmo quando não está duplicado. Você pode ler mais sobre o que acontece com diferentes versões de módulos neste caso, em docs.npmjs.com/cli/dedupe
Arun Reddy
1
não ajudou, tentei sudoe agora está funcionando para mim.
asedsami
6
No meu caso, meu problema parece ser o Dropbox instalado, que parece usar muitos relógios. Então eu tive que usar: fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -pcomo na resposta aceita, mas +1 para Ensina-menpm dedupe
Isso faz o mesmo que a resposta do kds , mas sem persistir nas alterações. Isso é útil se o erro ocorrer apenas após algum tempo de atividade do seu sistema.
Essa deve ser a resposta aceita, pois o problema é causado naturalmente pelo que está sendo executado no momento e não por uma configuração incorreta (veja o exemplo "pony").
Arielnmz
7
Para descobrir quem está fazendo instâncias inotify , tente este comando ( fonte ):
for foo in /proc/*/fd/*; do readlink -f $foo; done | grep inotify | sort | uniq -c | sort -nr
Usando ps -p 2857, consegui identificar o processo 2857 como sublime_text. Somente depois de fechar todas as janelas sublimes, consegui executar o script do nó.
o mesmo comigo para vscode mas eu acho que ela está relacionada com relógios de arquivo bem
pcnate
3
Eu encontrei esse erro depois que meu PC cliente travou, o jest --watchcomando que eu estava executando no servidor persistiu e tentei executar jest --watchnovamente.
O aditamento ao /etc/sysctl.confdescrito nas respostas acima trabalharam contornar esse problema, mas também era importante encontrar meu velho processo via ps aux | grep nodee kill-lo.
A solução é quase a mesma (se não a mesma) das respostas aceitas, apenas tem mais explicações para quem chega aqui depois de encontrar os problemas do código vs.
grunt
mas sim de qualquer programa usando o inotify abaixo. Há uma boa explicação em unix.stackexchange.com/questions/13751/… .Respostas:
Depois de fazer algumas pesquisas, encontrei a solução. Execute o comando abaixo.
Para o Arch Linux, adicione esta linha ao /etc/sysctl.d/99-sysctl.conf:
fonte
fs.inotify.max_user_watches=524288
a/etc/sysctl.d/99-sysctl.conf
e, em seguida, executarsysctl --system
. Isso também persistirá nas reinicializações. Para obter mais detalhes: wiki.archlinux.org/index.php/Sysctlnpm dedupe
esclareceu para mim. problemaecho fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
grava no final do arquivo /etc/sysctl.conf a linha "fs.inotify.max_user_watches = 524288"sudo sysctl -p
reconfigura o kernel no tempo de execução, carregando o arquivo /etc/sysctl.conf como um parâmetroA qualquer momento que você precisar executar
sudo something ...
para corrigir algo, faça uma pausa para pensar no que está acontecendo. Embora a resposta aceita aqui seja perfeitamente válida, ela está tratando o sintoma e não o problema. É o equivalente a comprar alforjes maiores para resolver o problema de: error, não é possível carregar mais lixo no pônei. O pônei já carrega tanto lixo que está desmaiando de exaustão.Uma alternativa (talvez comparável a retirar o excesso de lixo do pônei e colocar no lixão) é executar:
Então vá se felicitar por fazer o pônei feliz.
fonte
sudo
e agora está funcionando para mim.fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
como na resposta aceita, mas +1 para Ensina-menpm dedupe
Depois de tentar a resposta da granada, você pode usar uma correção temporária:
Isso faz o mesmo que a resposta do kds , mas sem persistir nas alterações. Isso é útil se o erro ocorrer apenas após algum tempo de atividade do seu sistema.
fonte
Para descobrir quem está fazendo instâncias inotify , tente este comando ( fonte ):
O meu ficou assim:
Usando
ps -p 2857
, consegui identificar o processo 2857 comosublime_text
. Somente depois de fechar todas as janelas sublimes, consegui executar o script do nó.fonte
Eu encontrei esse erro depois que meu PC cliente travou, o
jest --watch
comando que eu estava executando no servidor persistiu e tentei executarjest --watch
novamente.O aditamento ao
/etc/sysctl.conf
descrito nas respostas acima trabalharam contornar esse problema, mas também era importante encontrar meu velho processo viaps aux | grep node
ekill
-lo.fonte
No meu caso, estava relacionado ao código vs em execução na minha máquina Linux. Eu ignorei um aviso que apareceu sobre o observador de arquivos bla bla. A solução está na página de documentos vs-code do linux https://code.visualstudio.com/docs/setup/linux#_visual-studio-code-is-unable-to-watch-for-file-changes-in- this-large-workspace-error-enospc
A solução é quase a mesma (se não a mesma) das respostas aceitas, apenas tem mais explicações para quem chega aqui depois de encontrar os problemas do código vs.
fonte
No meu caso, descobri que tenho um plugin agressivo para o Vim, apenas o reiniciei.
fonte