নোড চিরতরে / usr / bin / env: নোড: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই


108

আমি নোডেজগুলি ব্যবহার করে ইনস্টল করেছি:

apt-get install nodejs

তারপরে আমি এনপিএম ব্যবহার করে ইনস্টল করেছি:

apt-get install npm

এবং তারপরে আমি সর্বদা ব্যবহার করে ইনস্টল করেছি:

npm install forever -g

এখন আমি আমার প্রকল্পে যাই /var/www/myproject

এবং চালানোর চেষ্টা forever start server.js

তারপরে আমি নিম্নলিখিত বার্তাটি পেয়েছি:

/usr/bin/env: node: No such file or directory

কেউ কি বলতে পারেন কি হচ্ছে?



1
আমি এই বাগটি পেয়েছি এবং আমি নোড সংস্করণ পরিচালক ব্যবহার করছি।
মুনচেসচেয়ার

উত্তর:


270

সম্পাদনা: 2018 এর ডিসেম্বর পর্যন্ত, এটি এখন আর সঠিক উপায় নয়। অন্য দুটি উত্তর দেখুন।

নোডের sudo ln -s "$(which nodejs)" /usr/local/bin/nodeজন্য আপনাকে এক্সিকিউটেবল নোডেজগুলি সিমলিংক করতে হবে এর কারণ হ'ল আপনি যখন " অ্যাপট-গাই ইনস্টল নোড" করেন তখন এটি কোনও সম্পর্কযুক্ত প্যাকেজ ইনস্টল করে রাখে, তাই তাদের একটি আলাদা নাম বেছে নিতে হয়েছিল যাতে এটি দ্বন্দ্ব না করে


4
$ কী (যা নোডেজ) "এমন কিছু যা কোড আপনি পেস্ট করেছেন তা আমার কেবল পেস্টের অনুলিপি করা উচিত বা?
মার্ক রাসমুসেন

11
"$ (যা নোডেজ)" নোডেজগুলি কার্যকর করতে পারে তার পথ পায়। আপনি "$ ()" এর ভিতরে কিছু
রাখলে

2
@ গেডবব আমি একই সমস্যার মুখোমুখি হয়েছি কিন্তু আমি তখনও এটি সমাধান করেছি নি যখন আমি যখন আপনার আদেশটি চালাচ্ছিলাম তখন আমি এলএন পেয়েছিলাম: প্রতীকী লিঙ্ক '/ usr / বিন / নোড' তৈরি করতে ব্যর্থ: ফাইল উপস্থিত রয়েছে
দাসাদিয়ায় চৈতন্য

@ দাসাদিয়া-চৈতন্য সে ক্ষেত্রে নিশ্চিত হয়ে নিন যে বিদ্যমান ফাইলটি নিম্নলিখিতটি চালিয়ে এক্সিকিউটেবলের জন্য সঠিক নোডের দিকে ইঙ্গিত করছে। ls -lart / usr / bin / node। যদি সিমলিংকটি সঠিক বাইনারিটির দিকে নির্দেশ না করে, সেক্ষেত্রে এটি মুছুন। এবং নিম্নলিখিতগুলি আবার চালান: sudo ln -s "$ (যা নোডেজ)" / usr / বিন / নোড
ব্রাউনমামবা

4
ডেবিয়ান এবং উবুন্টুতে একটি প্যাকেজ nodejs-legacyরয়েছে যা প্রতীকী লিঙ্ক সরবরাহ করে। আপনি ম্যানুয়ালি এটি করার কথা না। apt-get install nodejs-legacyসমস্যা সমাধানের সঠিক উপায় হ'ল নীচে আমার উত্তরটি দেখুন।
ক্ল্যামেন্ট শ্রেনার

45

স্বীকৃত উত্তরটি সমস্যার সমাধানের সময়, ডিবিয়ান জেসি এবং ফরোয়ার্ড এবং উবুন্টু 14.4 এবং 1 ফরোয়ার্ড সহ নোডেজ-লিগ্যাসি ইনস্টল করার জন্য এটি করার সঠিক উপায় :

apt-get install nodejs-legacy

কারণ হ'ল দেবিয়ান এর মধ্যে ইতিমধ্যে একটি প্যাকেজ (নোড) সরবরাহ করেছে / usr / bin / node এবং নোডেজ নোড বাইনারি / usr / bin / nodejs এ ইনস্টল করতে হয়েছিল।

Nodejs-উত্তরাধিকার প্যাকেজ / usr / bin / nodejs থেকে / usr / bin / নোড (এবং সাথে সঙ্ঘাত থেকে একটি সিম্বলিক লিঙ্ক প্রদান করে নোড প্যাকেজ)।

উত্স: [সিটিটিই # 614907] নোড / নোডেজ সংঘাতের সমাধান এবং ডিবিয়ান বাগ # 614907: নোড: নোড.জেএস ইন্টারপ্রেটারের সাথে নাম দ্বন্দ্ব


এটি ডিবিয়ান / উবুন্টু +1 এর সঠিক উপায়, ওএসের সাথে পরিচিত নয় তাদের পক্ষে দুর্দান্ত প্রসঙ্গ।
লাইগামার

18

আপনি সর্বশেষ নোড সংস্করণে আপডেট করলে এটি আরও ভাল

  1. sudo এনপিএম ক্যাশে পরিষ্কার -f
  2. sudo এনপিএম ইনস্টল -gn
  3. sudo n স্থিতিশীল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.