20 Oct 16:40:37 - [nodemon] v0.7.10
20 Oct 16:40:37 - [nodemon] to restart at any time, enter `rs`
20 Oct 16:40:37 - [nodemon] watching: /my/proyect/server
20 Oct 16:40:37 - [nodemon] exception in nodemon killing node
Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Object.watchFileChecker.check (/usr/lib/node_modules/nodemon/nodemon.js:160:6)
at ready (/usr/lib/node_modules/nodemon/nodemon.js:49:22)
at /usr/lib/node_modules/nodemon/nodemon.js:63:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
20 Oct 16:40:37 - [nodemon] reading ignore list
20 Oct 16:40:37 - [nodemon] exception in nodemon killing node
Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at fs.watch (fs.js:1076:11)
at checkTimer (/usr/lib/node_modules/nodemon/nodemon.js:467:27)
at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
Versão do Node?
Além disso, você pode fornecer um script de caso de teste simples que está usando (para testar).
use o Nó 0.10.21. Com qualquer script, gera um erro.
Este é o mesmo problema que o # 144? Não consigo replicar isso no meu mac (embora eu não pergunte qual sistema operacional você tem, mas assumi o tipo * nix com base no caminho em sua pasta acima).
Diferentes, são diferentes aqui está executando um único processo. No outro é executado em processo múltiplo, não em nuvem
Experimentou este erro hoje com vários aplicativos (expresso, restificar).
NodeJS: v0.10.21
Versão ElementaryOS: 0.2 "Luna" (64 bits)
Construído em: Ubuntu 12.04 ("Preciso")
Kernel 3.5.0-43-genérico
11 Nov 17:32:38 - [nodemon] v0.7.10
11 Nov 17:32:38 - [nodemon] to restart at any time, enter `rs`
...
11 Nov 17:32:38 - [nodemon] exception in nodemon killing node
Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Object.watchFileChecker.check (/home/.../node_modules/nodemon/nodemon.js:160:6)
at ready (/home/.../node_modules/nodemon/nodemon.js:49:22)
at /home/.../node_modules/nodemon/nodemon.js:63:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
reproduzir:
npm install nodemon
./node_modules/.bin/nodemon app.js
app.js (de http://nodejs.org/)
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
Recebi o mesmo erro com CoffeeScript - assistir ./node_modules/.bin/coffee --watch app/
/home/.../node_modules/coffee-script/lib/coffee-script/command.js:334
throw e;
^
Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at watchDir (/home/.../node_modules/coffee-script/lib/coffee-script/command.js:299:27)
at /home/.../node_modules/coffee-script/lib/coffee-script/command.js:102:11
at Object.oncomplete (fs.js:107:15)
Recebi o mesmo erro com um projeto de composite.js usando coffeescript no Ubuntu 13.10 com node 0.10.21
$ nodemon server.coffee
27 Nov 21:40:14 - [nodemon] v0.7.10
27 Nov 21:40:14 - [nodemon] to restart at any time, enter `rs`
27 Nov 21:40:14 - [nodemon] watching: /home/chok/work/edf/bluetic/src
27 Nov 21:40:14 - [nodemon] exception in nodemon killing node
Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Object.watchFileChecker.check (/usr/local/lib/node_modules/nodemon/nodemon.js:160:6)
at ready (/usr/local/lib/node_modules/nodemon/nodemon.js:49:22)
at /usr/local/lib/node_modules/nodemon/nodemon.js:63:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
Alguém pode tentar isso com a versão dev do nodemon? Fiz muitas mudanças e estou tentando concentrar meus esforços em garantir que a nova versão resolva todos esses problemas.
Você pode instalar usando npm install -g nodemon@dev
Funciona para mim agora não sei por quê. Usando a última versão estável do NPM do Nodemon. Também tive o mesmo problema com o coffeescript --watch e agora também funciona. Nenhuma atualização de nó, apenas módulos de instalação npm e atualizações de distro.
Eu tenho o mesmo erro, mas o processo para:
$ nodemon server.coffee
3 Dec 15:32:42 - [nodemon] v0.9.10
[nodemon] exception in nodemon killing node
[nodemon] Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Function.check (/usr/local/lib/node_modules/nodemon/lib/config/watchable.js:34:6)
at alternativeCheck (/usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:18:15)
at /usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:36:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
@chok você pode executar o seguinte (e colar o resultado) para mim no mesmo diretório em que está executando o nodemon:
find . | wc
Estou tentando ter uma ideia do que está realmente causando esse problema.
Aqui está o resultado:
$ find . | wc
7677 7677 542965
Ok, são 7600 arquivos que ele está tentando vincular aos relógios também.
Você pode executar tree
e colocar o resultado em http://pastie.org/ (apenas porque será massivo).
Pastie disse que é muito grande (mais de 64kb) e afinal não gostei do texto do rodapé: p (todas as suas pastas são nos pertencem.). Removi algumas partes específicas dos meus projetos. A propósito, a maioria dos arquivos estão, é claro, localizados em node_modules.
Você pode encontrá-lo em gist: https://gist.github.com/chok/7774318
Ok, eu _ acho_ que este é um problema totalmente ligado ao número de arquivos que estão sendo monitorados (já que você tem que vincular a cada arquivo individual). Eu estava pensando em ignorar os diretórios node_modules e .git por padrão, mas você pode tentar fazer isso com o comando ignore (supondo que você ainda esteja executando 0.9.x):
nodemon -i node_modules
É claro que isso não precisa ser feito todas as vezes, estou apenas tentando confirmar que esse é o problema.
Não funciona :(
$ nodemon -i node_modules/ server.coffee
3 Dec 20:52:32 - [nodemon] v0.9.10
[nodemon] exception in nodemon killing node
[nodemon] Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Function.check (/usr/local/lib/node_modules/nodemon/lib/config/watchable.js:34:6)
at alternativeCheck (/usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:18:15)
at /usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:36:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
Eu também tento:
$ nodemon -w app/* server.coffee
3 Dec 20:53:32 - [nodemon] v0.9.10
[nodemon] exception in nodemon killing node
[nodemon] Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Function.check (/usr/local/lib/node_modules/nodemon/lib/config/watchable.js:34:6)
at alternativeCheck (/usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:18:15)
at /usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:36:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
Você pode executar exatamente o mesmo comando, mas adicionar --dump
e me enviar a resposta (quando você estiver fazendo a versão para ignorar).
Não há mudança:
$ nodemon -i node_modules/ server.coffee --dump
3 Dec 21:17:18 - [nodemon] v0.9.10
[nodemon] exception in nodemon killing node
[nodemon] Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Function.check (/usr/local/lib/node_modules/nodemon/lib/config/watchable.js:34:6)
at alternativeCheck (/usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:18:15)
at /usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:36:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
Hmm, desculpe, você pode colocar --dump
antes do seu script, ele deve me dar um dump da configuração.
Já tentei os dois :(
$ nodemon -i node_modules/ --dump server.coffee
3 Dec 21:25:35 - [nodemon] v0.9.10
[nodemon] exception in nodemon killing node
[nodemon] Error: watch ENOSPC
at errnoException (fs.js:1019:11)
at FSWatcher.start (fs.js:1051:11)
at Object.fs.watch (fs.js:1076:11)
at Function.check (/usr/local/lib/node_modules/nodemon/lib/config/watchable.js:34:6)
at alternativeCheck (/usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:18:15)
at /usr/local/lib/node_modules/nodemon/lib/config/checkWatchSupport.js:36:11
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:735:16)
at Socket.<anonymous> (child_process.js:948:11)
Oi. Não quero parecer obtuso, mas quando encontrei esse erro, corrigi-o aumentando max_user_watches
no meu sistema. Estive observando este tópico para ver se algo mais estava acontecendo.
@taylorjbrennan sim, eu sei que isso resolverá o problema, mas embora @chok seja capaz de se replicar de forma consistente, estou em busca de uma mudança que consertará o nodemon sem que o usuário precise fazer a mágica max_user_watches
io.
@remy ótimo, estou ansioso para vê-lo.
@chok, você pode tentar novamente com [email protected] - nodemon agora ignora .git e node_modules / ** / node_modules por padrão, então o número de relógios deve ser significativamente menor (eu reabrirei se isso ainda for um problema) .
Também tentarei detectar o erro watch ENOSPC
e enviar uma mensagem sobre o aumento de max_user_watches
. Não é o ideal, mas nada mais que eu possa realmente fazer.
Não tenho mais esta mensagem :) mas agora tenho o problema explicado em # 245
Acabei de ter esse problema e era um problema de muitos arquivos abertos no sistema. (Sublime Text adora abrir muitos arquivos, se você permitir)
Assim que eu abro um diretório com muitos arquivos no Sublime 2, o nodemon não funciona mais e cospe o erro referenciado. Eu só fui capaz de contornar isso não usando o recurso de "pasta aberta" do Sublimes. Obrigado pela dica @ eyce9000.
@timtips mesmo com sublimetext3 e nodemon v1.3.1
@baio, você pode verificar isso. Não há [email protected] - há um pré-lançamento @ 1.3.0-1 - mas ele não está em produção no npm (você também pode confirmar sua versão npm)?
Ele pode fechar esse bug? Como novas versões de nodemon e nodejs, foram resolvidos este problema, embora eu não pudesse dizer que estava totalmente resolvido. Pode-se dizer que não ocorre mais com frequência.
@alejonext você pode tentar com npm install -g nodemon@dev
- Eu fiz algumas mudanças que não estão no 1.2.1.
O erro, na verdade, significa "Erro, SEM SPaCe de disco" - mas acho que está vinculado ao número de arquivos sendo monitorados, que deve ser reduzido por meio de alterações no código de observação ...
@remy Funciona perfeitamente :) obrigado pelo seu trabalho !!!!
Doce. Haverá uma versão estável de 1.3.0 para npm provavelmente esta semana com um monte de correções de bugs também.
@remy surpreso com o tempo de resposta. Obrigado!
@remy
exceção no nó matador do nodemon
Erro: assistir ENOSPC
em errnoException (fs.js: 1030: 11)
em FSWatcher.start (fs.js: 1062: 11)
em Object.fs.watch (fs.js: 1087: 11)
nó v0.10.33
SO: Linux ubuntu
Corrigi isso com este comando https://github.com/ember-cli/ember-cli/issues/1240#issuecomment -47855317
mas atualizar o pacote é a maneira recomendada?
Estou me perguntando por que ficou assim em primeiro lugar. Estou usando o gerenciador de versão de nó com
nó 0.12.0
npm 2.7.0
brasa 0.2.0
@ahnbizcad
Talvez por causa de
https://github.com/joyent/node/wiki/API-changes-between-v0.10-and-v0.12#resource -management?
O sistema tem um limite de quantos arquivos podem ser vistos por um usuário. Você pode ficar sem relógios muito rapidamente se o Grunt estiver rodando com outros programas como o Dropbox.
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Estou tendo este problema com "nodemon": "^1.4.1"
e "node": "0.12.7"
: desapontado:
Por favor, tente com # 625
Na terça-feira, 8 de setembro de 2015 16:20 Wesley Queiroz [email protected] escreveu:
Estou tendo esse problema com "nodemon": "^ 1.4.1" e "node": "0.12.7" [imagem:
: desapontado:]-
Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/remy/nodemon/issues/214#issuecomment -138598438.
Tentei com alpha
mas ainda obtive ENOSPC
...
Meu sysctl.conf
tem fs.inotify.max_user_watches=10000
.
Se eu mudar para 524288
, funciona, mas no meu "dev-server" não poderei mudar.
Quantos arquivos você está tentando assistir? ou seja, quantos estão sob o seu
diretório de trabalho?
Na terça-feira, 8 de setembro de 2015 às 17:37 Wesley Queiroz [email protected] escreveu:
Tentei com alfa, mas ainda obtendo ENOSPC ...
Meu sysctl.conf tem fs.inotify.max_user_watches = 10000.
Se eu mudar para 524288 funciona, mas no meu "dev-server" não vou conseguir
para mudar isso.-
Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/remy/nodemon/issues/214#issuecomment -138624285.
Não muitos, 30 no máximo.
Mas eu acho que o nodemon está tentando assistir node_modules
na raiz do projeto.
Abaixo está a configuração passada para nodemon (estou usando-a como um módulo de nó):
nodemon({
script: 'server/server.js',
watch: [
'server/',
'common/'
],
ext: 'js json coffee'
});
a pasta do servidor tem:
7 limas de café
5 arquivos json
e a pasta comum tem apenas 1 arquivo json ...
Sim ... então execute find . | wc -l
e o que esse número dá a você? Porém, ele deve ignorar node_modules
por padrão, é possível que não esteja sendo levado em consideração.
Executar find . | wc -l
na raiz do projeto me dá 18266
mas quando eu removo node_modules
e bower_components
dá apenas 320
.
Ok, então acho que o relógio _está_ incluindo node_modules
- isso faz parte do refatorador # 625 e precisa ser consertado.
@wesleycoder você pode tentar com o nodemon@dev
mais recente (deve ser a versão 1.5.0-alpha4
) e executar com DEBUG=nodemon <your normal nodemon command>
e colar a saída completa.
Uau!
Funciona!
Sem erros!
Obrigado!
Isso pode ser devido ao alcance do seu sistema fora do alcance do usuário pode assistir os arquivos. você pode usar a seguinte linha de comando no ubuntu
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
ou tente
npm dedupe
Refira-se a este stackoverflow
@ankibalyan @uttampanara
funciona !
echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
funciona para mim também!
echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Mesmo aqui ! : +1:
echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Execute este comando
echo fs.inotify.max_user_watches=582222 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Outra solução possível é adicionar um arquivo de configuração nodemon.json
em sua pasta raiz e especificar padrões de ignorar, por exemplo:
nodemon.json
{
"ignore": [
"*.test.js",
"dist/*"
]
}
.git
, node_modules
, bower_components
, .nyc_output
, coverage
e .sass-cache
são ignorados, então você não não precisa adicioná-los à sua configuração.O truque de notificação do fs não parece funcionar em um contêiner docker ... pelo menos não no Alpine 3.8, recebo o mesmo erro ENOSPC. Está se tornando mais importante à medida que as ferramentas se tornam obsoletas e ainda precisamos manter os produtos legados
Comentários muito úteis
A postagem sugere executar isso para aumentar o número de relógios disponíveis.