Узел.JS: получение ошибки: [nodemon] внутренние часы не удалось: смотреть ENOSPC



я только что установил Node.js на Ubuntu 14.04 операционная система в первый раз. Я также установил npm. Следующим шагом в моем процессе установки Установка nodemon. Все это прекрасно сработало.





но, когда я запускаю nodemon введя nodemon app.js в моей командной строке, я получаю следующее сообщение об ошибке...



[nodemon] 1.8.1
[nodemon] to restart at any time, enter
rs
[nodemon] watching: *.*
[nodemon] starting
узел приложения.js
[nodemon] Internal watch failed: watch ENOSPC



в командной строке ниже ошибка...



alopex@Alopex:~/Desktop/coding_dojo/week-9/javascript/node/testing_node$ Hello World


почему это происходит? Это нормальное поведение для nodemon? Если нет, то как я могу это исправить?





боковая ноты...



1) app.js это С console.log(111) внутри него.

2) node версия v0.10.25

3) npm версия 1.3.10

4) nodemon версия 1.8.1

5) ubuntu версия...



Distributor ID: Ubuntu
Description: Ubuntu 14.04.3 LTS
Release: 14.04
Codename: trusty
565   9  

9 ответов:

похоже, что мои максимальные порты были настроены неправильно. Я побежал следующий код и он работал...

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

эта команда позволяет увеличить количество часов, разрешенных для одного пользователя. По умолчанию число может быть низким (например, 8192). Когда nodemon пытается смотреть большое количество каталогов для изменений он должен создать несколько часов, которые могут превысить этот предел.

вы также можете решить эту проблему на:

sudo sysctl fs.inotify.max_user_watches=582222 && sudo sysctl -p

но то, как это было написано сначала, сделает это изменение постоянным.

в дискуссии по поводу здесь,ENOSPC означает Error No more hard-disk space available. Причина, почему это много памяти требуется nodemon или gulp-nodemon (в моем случае) заключается в том, что он наблюдал содержимое папки которые он не должен. Исправить nodemon и ignore настройка, которая может быть использована, чтобы сказать nodemon, что не смотреть. Посмотрите на пример конфигурации nodemon здесь.

[nodemon] Internal watch failed: watch /home/Document/nmmExpressServer/bin ENOSPC
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `nodemon ./bin/www`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] start script.

Это ошибка, которую я получил при запуске nodemon ./bin/www.

решение закрывало окно атома в окне проекта был открыт целый каталог папок.

Я не знаю, почему, но я предполагаю, что Atom и nodemon используют аналогичные процессы для просмотра файлов/папок.

Ерик, Вы можете просто убить все другие процессы узла с помощью

узел pkill-f

а затем снова перезагрузите сервер. Тогда все будет в порядке.

добавить nodemon.json файл конфигурации в корневой папке и укажите игнорировать шаблоны, например:

nodemon.json

{
  "ignore": [
    "*.test.js", 
    "dist/*"
  ]
}
  • обратите внимание, что по умолчанию .git,node_modules,bower_components,.nyc_output,coverage и .sass-cache игнорируются, поэтому вам не нужно добавлять их в свою конфигурацию.

пояснение: эта ошибка возникает из-за превышения максимального количества наблюдателей, разрешенного вашей системой (т. е. nodemon не имеет больше дискового пространства для просмотра все файлы - что, вероятно, означает, что вы смотрите не важные файлы). Таким образом, вы игнорируете неважные файлы, которые вас не волнуют изменения в них, например выходные данные сборки или тестовые случаи.

на запущенном узле сервера отображаются следующие ошибки и решения:

сервер nodemon.js

[nodemon] 1.17.2

[nodemon], чтобы перезапустить в любой момент, введите rs

[nodemon] смотрите: .

[nodemon] начиная с node server.js

[nodemon] сбой внутренних часов: watch / home/aurum304 / jin ENOSPC

sudo pkill -f node

это работает для меня.

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

У меня была та же ошибка, но в Ubuntu 14.04 внутри Windows 10 (Bash на Ubuntu на Windows). Все, что я сделал, чтобы преодолеть ошибку, это обновить обновление Creators, которое затем позволило мне установить версию 16.04 Ubuntu bash, а затем после установки последней версии node (by этой шаги) я установил также самую новую версию npm, а затем nodemon начал работать правильно.

вместо указания списка каталогов для игнорирования( например, отрицательный), вы также можете указать список каталогов для просмотра (например, положительный):

nodemon --watch dir1 --watch dir2  dir1/examples/index.js

в моем конкретном случае у меня был один каталог, который я хотел посмотреть, и около девяти я хотел игнорировать, поэтому указание "- watch "было намного проще, чем указание "- ignore"

Comments

    Ничего не найдено.