Узел.JS: получение ошибки: [nodemon] внутренние часы не удалось: смотреть ENOSPC
я только что установил Node.js на Ubuntu 14.04 операционная система в первый раз. Я также установил npm. Следующим шагом в моем процессе установки Установка nodemon. Все это прекрасно сработало.
но, когда я запускаю nodemon введя nodemon app.js в моей командной строке, я получаю следующее сообщение об ошибке...
[nodemon] 1.8.1 rs
[nodemon] to restart at any time, enterузел приложения.js
[nodemon] watching: *.*
[nodemon] starting
[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
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