নোড প্যাকেজ ম্যানেজার কোনওভাবে দূষিত হয়ে গেছে, এখন এটি ইনস্টল করা যায় না


14

আমি যখন npm update -gনোডেজ অ্যাপ ডিরেক্টরিতে ব্যবহার করার সিদ্ধান্ত নিয়েছি তখন আমি আজ একটি সমস্যার মধ্যে পড়েছিলাম। এটি একটি খারাপ সিদ্ধান্ত ছিল, কারণ এটি আমাকে এনপিএমের সাথে একটি সাধারণ এবং বিপর্যয়কর সমস্যায় ফেলেছে

সমাধানটি নোডেজ এবং এনপিএম পুনরায় ইনস্টল করা। দুর্ভাগ্যক্রমে আমি যখন এনপিএম ইনস্টল করতে যাই sudo apt-get install npmএটি কাজ করে না।

টার্মিনালে সম্পূর্ণ ত্রুটি এখানে:

Some packages could not be installed. This may mean that you have requested
an impossible situation or if you are using the unstable distribution that 
some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
 npm : Depends: nodejs but it is not going to be installed
   Depends: node-abbrev (>= 1.0.4) but it is not going to be installed
   Depends: node-ansi but it is not going to be installed
   Depends: node-archy but it is not going to be installed
   Depends: node-block-stream but it is not going to be installed
   Depends: node-fstream (>= 0.1.22) but it is not going to be installed
   Depends: node-fstream-ignore but it is not going to be installed
   Depends: node-github-url-from-git but it is not going to be installed
   Depends: node-glob (>= 3.1.21) but it is not going to be installed
   Depends: node-graceful-fs (>= 2.0.0) but it is not going to be installed
   Depends: node-inherits but it is not going to be installed
   Depends: node-ini (>= 1.1.0) but it is not going to be installed
   Depends: node-lockfile but it is not going to be installed
   Depends: node-lru-cache (>= 2.3.0) but it is not going to be installed
   Depends: node-minimatch (>= 0.2.11) but it is not going to be installed
   Depends: node-mkdirp (>= 0.3.3) but it is not going to be installed
   Depends: node-gyp (>= 0.10.9) but it is not going to be installed
   Depends: node-nopt (>= 2.1.1) but it is not going to be installed
   Depends: node-npmlog but it is not going to be installed
   Depends: node-once but it is not going to be installed
   Depends: node-osenv but it is not going to be installed
   Depends: node-read but it is not going to be installed
   Depends: node-read-package-json (>= 1.1.0) but it is not going to be installed
   Depends: node-request (>= 2.25.0) but it is not going to be installed
   Depends: node-retry but it is not going to be installed
   Depends: node-rimraf (>= 2.2.2) but it is not going to be installed
   Depends: node-semver (>= 2.1.0) but it is not going to be installed
   Depends: node-sha but it is not going to be installed
   Depends: node-slide but it is not going to be installed
   Depends: node-tar (>= 0.1.18) but it is not going to be installed
   Depends: node-which but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

এনপিএম সঠিকভাবে ইনস্টল এবং আবার চলার জন্য আমি কী করতে পারি?

ধন্যবাদ।

উত্তর:


29

হালনাগাদ

এই উত্তরের নীচে উইলিয়াম এন্টারিকেনের মন্তব্য সম্পর্কে, উবুন্টুতে স্ন্যাপ প্যাকেজ হিসাবে স্থানীয়ভাবে নোড.জেএস ইনস্টল করার আরও ভাল উপায় রয়েছে।

নোড.জেএস বর্তমানে উবুন্টুর সমস্ত সমর্থিত সংস্করণগুলিতে স্ন্যাপ প্যাকেজ হিসাবে উপলব্ধ। নোড.জেএস-এর জন্য নির্দিষ্ট, বিকাশকারীগণ বর্তমানে সমর্থিত এক বা একাধিক রিলিজ থেকে চয়ন করতে পারেন এবং সরাসরি নোডোসোর্স থেকে নিয়মিত স্বয়ংক্রিয় আপডেট পেতে পারেন। নোড.জেএস সংস্করণগুলি 6, 8, 9, 10, 11, 12 এবং 13 বর্তমানে উপলভ্য, স্ন্যাপ স্টোরটি নোড.জেএস প্রকাশের কয়েক ঘন্টা বা কয়েক মিনিটের মধ্যে আপডেট করা হবে।

নোড একটি একক কমান্ড দিয়ে ইনস্টল করা যেতে পারে, উদাহরণস্বরূপ:

sudo snap install node --classic --channel 9/stable 

নোড স্ন্যাপটি কমান্ড দ্বারা অ্যাক্সেস করা যায় node, উদাহরণস্বরূপ:

$ নোড -v  
v9.9.0

নোড স্ন্যাপের অংশ হিসাবে এনএমপি-র একটি আধুনিক সংস্করণ ইনস্টল করা হবে। আপনার স্বাভাবিক শেলের মধ্যে এনডিএম নোড রেপ্লেলের বাইরে চালানো উচিত। নোড স্ন্যাপ ইনস্টল করার পরে এনপিএম আপডেট পরীক্ষা সক্ষম করতে নিম্নলিখিত কমান্ডটি চালান:

sudo chown -R $ ব্যবহারকারী: $ (id -gn $ USER) / হোম / আপনার-ব্যবহারকারীর নাম / কনফিগ

your-usernameউপরের কমান্ডটিতে আপনার নিজের ব্যবহারকারীর নামটি প্রতিস্থাপন করুন । তারপরে npm -vএনএমপি-র সংস্করণটি আপ টু ডেট আছে কিনা তা পরীক্ষা করে দৌড়াুন। উদাহরণ হিসাবে আমি পরীক্ষা করেছিলাম যে এনএমপি আপ টু ডেট ছিল, কমান্ডটি দিয়ে ইতোমধ্যে ইনস্টল করা প্যাকেজটির সূত্রটি পরীক্ষা করে npm list yarnএবং কমান্ডটি সহ বিদ্যমান সুতা প্যাকেজটিকে সর্বশেষ সংস্করণে আপডেট করেছেnpm update yarn

ব্যবহারকারীরা এনভিএম (নোড সংস্করণ পরিচালক) এর মতো অতিরিক্ত সরঞ্জামগুলি জড়িত না করে যে কোনও সময় নোড.জেএস এর সংস্করণগুলির মধ্যে পরিবর্তন করতে পারে, উদাহরণস্বরূপ:

sudo snap refresh node --channel=8/stable

ব্যবহারকারীরা নোড.জেএস এর রক্তপাত-প্রান্তের সংস্করণগুলি পরীক্ষা করতে পারেন যা সর্বশেষতম প্রান্ত চ্যানেল থেকে ইনস্টল করা যেতে পারে যা বর্তমানে নোড.জেএস সংস্করণ 12 এর সাথে স্যুইচ করে ট্র্যাক করছে:

sudo snap switch node --edge

এই পদ্ধতিটি কেবলমাত্র সেই ব্যবহারকারীদের জন্যই প্রস্তাবিত যারা প্রবাহের টেস্টিং এবং বাগ রিপোর্টে অংশ নিতে ইচ্ছুক।


আসল উত্তর

বর্তমানে উবুন্টুর সমস্ত সমর্থিত সংস্করণে নোড.জেএস (নোডিজ) এবং প্যাকেজ ম্যানেজারের সর্বশেষতম এলটিএস সংস্করণ ইনস্টল করতে, টার্মিনালটি খুলুন এবং নিম্নলিখিত কমান্ডগুলি চালনা করুন:

sudo apt-get remove nodejs npm ## remove existing nodejs and npm packages
sudo apt-get install curl  
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs  

আপনি যদি এই তিনটি কমান্ড অনুলিপি করছেন তবে দ্বিতীয় কমান্ডের শেষে হাইফেনটিকে অবহেলা করবেন না।

nodejsপ্যাকেজ রয়েছে nodejsসেইসাথে বাইনারি npm, তাই আপনি ইনস্টল করতে হবে না npmআলাদাভাবে। তবে কিছু npmপ্যাকেজ কাজ করার জন্য (যেমন উত্স থেকে বিল্ডিং প্রয়োজন) আপনার build-essentialপ্যাকেজটি ইনস্টল করতে হবে :

sudo apt-get install build-essential  

এলটিএস পরিকল্পনা

নোড.জেএস এর নতুন সেমিভার-মেইল রিলিজ masterপ্রতি ছয় মাসে কেটে নেওয়া হয়। নতুন সম-সংখ্যাযুক্ত সংস্করণ (যেমন v6, v8, v10, ইত্যাদি) এপ্রিল মাসে কাটা হয়। নতুন বিজোড় সংখ্যাযুক্ত সংস্করণ (যেমন v5, v7, v9) অক্টোবরে কাটা হয়।

যখন একটি নতুন বিজোড়-সংখ্যাযুক্ত বড় রিলিজ কাটা হয়, পূর্ববর্তী সম-সংখ্যাযুক্ত বড় সংস্করণটি দীর্ঘমেয়াদী সহায়তা পরিকল্পনায় স্থানান্তর করে।

এলটিএস পরিকল্পনার অন্তর্ভুক্ত প্রতিটি বড় সংস্করণটি এলটিএসের কভারেজে প্রবেশের তারিখ থেকে 18 মাসের জন্য সক্রিয়ভাবে রক্ষণাবেক্ষণ করা হবে। এই 18 মাসের সক্রিয় সহায়তার পরে, বড় সংস্করণটি আরও 12 মাসের জন্য "রক্ষণাবেক্ষণ" মোডে রূপান্তর করবে।

নন-এলটিএস ইনস্টলেশন

মার্চ, ২০১ to অবধি বর্তমান নোড.জেএস-এর সর্বশেষ নন-এলটিএস সংস্করণ ইনস্টল করার কমান্ডগুলি (v88 এটি পোস্ট করার সময়) নিম্নরূপ:

sudo apt-get remove nodejs npm ## remove existing nodejs and npm packages
sudo apt-get install curl  
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs  

নোড.জেএস এলটিএস শিডিউল

এলটিএসের স্থিতির কোডনাম এলটিএস রিলিজ করুন রক্ষণাবেক্ষণ শুরু করুন রক্ষণাবেক্ষণ সমাপ্তি
6.x অ্যাক্টিভ বোরন 2016-10-18 এপ্রিল 2018 এপ্রিল 2019
7.x কোনও এলটিএস নেই              
8.x অ্যাক্টিভ কার্বন 2017-10-31 এপ্রিল 2019 ডিসেম্বর 2019
9.x কোনও এলটিএস নেই              
10.x অ্যাক্টিভ ডাবনিয়াম অক্টোবর 2018 এপ্রিল 2020 এপ্রিল 2021  
11.x কোনও এলটিএস নয় 2019-04-01 2019-06-30
12.x 2019-10-22 2021-04-01 2022-04-01
13.x কোনও এলটিএস 2020-04-20 2020-06-01 নেই


"sudo apt-get install -y nodejs" ব্যবহার করে আমার পক্ষে কাজ করেছে
দবিন্দর কুমার

এই পদ্ধতির জন্য অনেকগুলি দলকে বিশ্বাস করা এবং তারপরে আপনার কম্পিউটারে ডেবি.নোসোর্স.কমকে সম্পূর্ণ অ্যাক্সেস দেওয়া দরকার, এমন একটি সত্তা যা আপনার সুরক্ষার জন্য সামগ্রী হ্যাশ অন্তর্ভুক্ত করার জন্য প্রতিটি সংস্করণে তাদের ওয়েবসাইট আপডেট করতে বিরক্তও করা যায় না। না ধন্যবাদ!
উইলিয়াম এন্টারিকেন

@ উইলিয়ামএন্ট্রিকেন নোড.জেএস এখন উবুন্টুতে একটি স্ন্যাপ প্যাকেজ যা curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -কমান্ড চালানোর প্রয়োজন নেই । পরিবর্তে নোড.জেএস একটি স্ন্যাপ প্যাকেজ হিসাবে ইনস্টল করা যেতে পারে। আমি আমার উত্তরে একটি নতুন আপডেট বিভাগ যুক্ত করেছি যাতে নোড.জেএস স্ন্যাপ প্যাকেজ ইনস্টল করার জন্য নির্দেশাবলী রয়েছে।
কারেল 17
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.