Nodemon: [nodemon] فشلت الساعة الداخلية: شاهد EMFILE

تم إنشاؤها على ١٨ نوفمبر ٢٠١٥  ·  24تعليقات  ·  مصدر: remy/nodemon

لست متأكدًا من سبب ذلك ، نظرًا لأن العملية نفسها كانت تعمل بشكل جيد قبل بضعة أيام. لقد أعدت التشغيل بدون أي تأثير ، لذلك من المفترض ألا تكون مشكلة الملفات المفتوحة كثيرة جدًا.

$ nodemon --debug --dump server.js
[nodemon] 1.8.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
--------------
node: v0.10.26
nodemon: 1.8.1
command: node /Users/rcoupe/.nvm/v0.10.26/bin/nodemon --debug --dump server.js
cwd: /Users/rcoupe/Code/overlay-management-system
OS: darwin x64
--------------
{ run: false,
  system: { cwd: '/Users/rcoupe/Code/overlay-management-system' },
  required: false,
  dirs: [ '/Users/rcoupe/Code/overlay-management-system' ],
  timeout: 1000,
  options:
   { dump: true,
     ignore:
      [ '.git',
        'node_modules',
        'bower_components',
        '.sass-cache',
        re: /\.git|node_modules|bower_components|\.sass\-cache/ ],
     watch: [ '*.*', re: /.*\..*/ ],
     ignoreRoot: [ '.git', 'node_modules', 'bower_components', '.sass-cache' ],
     restartable: 'rs',
     colours: true,
     execMap: { py: 'python', rb: 'ruby' },
     stdin: true,
     runOnChangeOnly: false,
     verbose: false,
     stdout: true,
     execOptions:
      { script: 'server.js',
        exec: 'node',
        args: [ '--debug' ],
        scriptPosition: 1,
        nodeArgs: undefined,
        ext: 'js,json',
        env: {},
        execArgs: [] },
     monitor:
      [ '*.*',
        '!/Users/rcoupe/Code/overlay-management-system/.git/**/*',
        '!/Users/rcoupe/Code/overlay-management-system/node_modules/**/*',
        '!bower_components',
        '!.sass-cache' ] },
  load: [Function],
  reset: [Function: reset],
  lastStarted: 0,
  loaded: [],
  watchInterval: null,
  command:
   { raw: { executable: 'node', args: [ '--debug', 'server.js' ] },
     string: 'node --debug server.js' } }
--------------
stale

التعليق الأكثر فائدة

حاول استخدام --watch "./directory". بالنسبة لي عملت

ال 24 كومينتر

+1

واجهت هذه المشكلة نفسها وقمت بإصلاحها عن طريق تحديث إصداري من NPM و Node.

أواجه هذه المشكلة على ما يبدو من العدم ..... لقد أعدت تشغيل جهازي ولكن ما زلت لا تعمل.

** قم بتحرير الترقية إلى أحدث npm لحل مشكلتي

لم يصلح تحديث NPM الأمر بالنسبة لي. Nodemon يعمل بشكل جيد في مشاريع أخرى ..

$ npm install -g npm
npm http GET https://registry.npmjs.org/npm
npm http 200 https://registry.npmjs.org/npm
npm http GET https://registry.npmjs.org/npm/-/npm-3.5.0.tgz
npm http 200 https://registry.npmjs.org/npm/-/npm-3.5.0.tgz
~/.nvm/v0.10.26/bin/npm -> ~/.nvm/v0.10.26/lib/node_modules/npm/bin/npm-cli.js
[email protected] ~/.nvm/v0.10.26/lib/node_modules/npm

$ nodemon server.js
[nodemon] 1.8.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node server.js`
[nodemon] Internal watch failed: watch EMFILE

$ npm -v
3.5.0

كنت أواجه هذه المشكلة أيضًا. لا توجد فكرة عما إذا كان هذا سيساعد أي شخص آخر أم لا ، لكنني ذهبت إلى الدليل / usr / local / bin وقمت بإزالة nodemon باستخدام rm -rf . لقد جربت npm uninstall nodemon ولكن كان ذلك يعيد لي رسالة تقول npm WARN uninstall not installed in... مما يجعلني أتساءل عما إذا كان التثبيت الأول قد حدث بشكل خاطئ أو ما إذا كنت قد قمت بتثبيته بشكل غير صحيح من قبل وكان هناك نوع من التعارض ؟

قصة قصيرة طويلة ، لقد أزلت nodemon القديم وقمت بتشغيل npm install -g nodemon مرة أخرى ويبدو أن هذا قد أزال الأمر برمته.

أواجه مشكلة مماثلة. باستخدام Node 5.1.0 و NPM 3.3.12.

root<strong i="6">@014b87ca92f1</strong>:/var/www/html# nodemon app.js
[nodemon] 1.8.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
...
info: Server lifted in `/var/www/html`
info: To see your app, visit http://localhost:1337
info: To shut down Sails, press <CTRL> + C at any time.

debug: --------------------------------------------------------
debug: :: Mon Dec 07 2015 16:54:53 GMT+0000 (UTC)

debug: Environment : development
debug: Port        : 1337
debug: --------------------------------------------------------
[nodemon] Internal watch failed: watch /var/www/html/node_modules/sails/node_modules/skipper/node_modules/multiparty/.travis.yml ENOSPC

إنه ليس دائمًا نفس الملف. إنه ملف مختلف عشوائي في كل مرة ولكن بعد حوالي 10 ثوانٍ ، أتلقى دائمًا رسالة _ [nodedemon] فشل الساعة الداخلية وتعطل nodemon؟

أنا أقوم بتشغيل هذا في حاوية Docker. يتم تثبيت Node و NPM و Nodemon على مستوى العالم.
لقد حاولت ترقية NPM إلى 3.5.1 ولم يؤد ذلك إلى حل المشكلة. هل ما زال يتعطل بعد حوالي 10 ثوانٍ؟

حاول استخدام --watch "./directory". بالنسبة لي عملت

تم حل مشكلتي ذات الصلة أعلاه (إعادة: ENOSPC) باتباع هذا . شيء يبدو متأصلًا في أنظمة ملفات يونكس وعدد الملفات المسموح بمشاهدتها في كل مرة؟

أقوم بتشغيل nodemon عبر الشاشة وعندما حدث هذا لي ، قمت بإصلاحه بقتل جلسة الشاشة وبدء جلسة جديدة.

فقط قم بتشغيل هذا لتغيير max_user_watchs ---------> echo fs.inotify.max_user_watches = 582222 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

أرى هذه المشكلة باستمرار على نظام Windows الفرعي الجديد لنظام Linux.

لا يبدو أن هذه مشكلة مع supervisor ، راجع للشغل.

@ djensen47 في الواقع الخطأ (على الأقل بالنسبة لي) على Windows Ubuntu shell هو EPERM وليس EMFILE الذي تمت مناقشته هنا.

هل وجد أي شخص إصلاحًا لمشكلة EPERM التي تحدث في Windows 10 Bash؟

Carpetfizz ، لقد واجهت للتو نفس المشكلة مع Windows 10 Bash. nodemon 1.10.0 ، عقدة 6.4.0.
يحدث الخطأ حتى إذا كنت أشاهد ملفًا واحدًا فقط (على سبيل المثال: nodemon -w app.js)

Carpetfizz بالنسبة لي كان المسار الحالي لا يتضمن البرنامج النصي الذي كنت أقوم بتشغيله:

$ cd /
$ nodemon /tmp/myproject/bin/myproject.js

قم بتثبيته بقرص مضغوط إلى المجلد الذي يحتوي على البرنامج النصي الرئيسي

ملاحظة: أنا أستخدم أوبونتو.

killall -9 عقدة حل هذه المشكلة

شكرا على الردود! أنا الآن أستخدم macOS ، لكنني سأراجع الحلول الخاصة بك إذا اضطررت إلى استخدام W10Bash مرة أخرى.

يمكنك استخدام ps -ef | عقدة grep للعثور على معرف العملية

ثم sudo kill -9

تم وضع علامة على هذه المشكلة تلقائيًا على أنها خاملة وقديمة لأنها لم يكن بها أي نشاط حديث. سيتم إغلاقها تلقائيًا في حالة عدم حدوث أي نشاط آخر. إذا كنت تعتقد أن هذا خطأ ، أو استمرت المشكلة ، فما عليك سوى إرسال رد في التعليقات و remy سوف (حاول!) للمتابعة.
شكرا لك على المساهمة <3

قم بتشغيل هذا الأمر

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

لدي خطأ

sysctl: illegal option -- p
usage: sysctl [-bdehiNnoqx] name[=value] ...
       sysctl [-bdehNnoqx] -a

لقد قمت بحلها على جهاز Mac الخاص بي عن طريق حذف node_modules وإعادة تثبيت nodemon مرة أخرى من خلاله _ لا تستخدمه عالميًا_؛ عملت بشكل طبيعي بعد ذلك.

حتى لدي نفس الخطأ:

[nodemon] فشلت الساعة الداخلية: EMFILE: عدد كبير جدًا من الملفات المفتوحة ، شاهد

لقد أصلحته بمجرد إلغاء تثبيت وإعادة تثبيت nodemon:

npm uninstall -g nodemon; npm install -g nodemon

أتمنى أن يعمل هذا معكم أيضًا

يمكنك تجربة --ignore node_modules

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات