এনপিএম মডিউলগুলি sudo ছাড়া বিশ্বব্যাপী ইনস্টল করবে না


126

আমি সবেমাত্র উবুন্টু 12.04 এলটিএস পুনরায় ইনস্টল করেছি এবং অন্য কোনও কিছুর আগে আমি এই পদক্ষেপগুলি করেছি :

  1. নিম্নলিখিত স্ক্রিপ্ট সহ প্যাকেজ ম্যানেজারের মাধ্যমে নোড ইনস্টল করা হয়েছে

    sudo apt-get update
    
    sudo apt-get install python-software-properties python g++ make
    
    sudo add-apt-repository ppa:chris-lea/node.js
    
    sudo apt-get update
    
    sudo apt-get install nodejs
  2. ইয়োমন, এক্সপ্রেস, এন, ইয়োমেনের জেনারেটরগুলি বিশ্বব্যাপী ইনস্টল করার চেষ্টা করা হয়েছিল এবং তাদের সকলের একই ত্রুটি ফিরে এসেছে

    এনপিএম ইআরআর! ত্রুটি: EACCES, sylink '../lib/node_modules/n/bin/n'

    এনপিএম ইআরআর! {[ত্রুটি: EACCES, syMLink '../lib/node_modules/n/bin/n'] ত্রুটি: 3, কোড: 'EACCES', পথ: '../lib/node_modules/n/bin/n'}

    এনপিএম ইআরআর!

    এনপিএম ইআরআর! রুট / প্রশাসক হিসাবে আবার এই আদেশটি চালানোর চেষ্টা করুন।

    এনপিএম ইআরআর! সিস্টেম লিনাক্স 3.8.0-29-জেনেরিক

    এনপিএম ইআরআর! "/ usr / bin / node" "/ usr / bin / npm" "ইনস্টল" "-g" "-d" "এন" কমান্ড

    এনপিএম ইআরআর! সিডব্লিউডি / হোম / হেবারলজ

    এনপিএম ইআরআর! নোড -v v0.10.20

    এনপিএম ইআরআর! npm -v 1.3.11

    এনপিএম ইআরআর! পাথ ../lib/node_modules/n/bin/n

    এনপিএম ইআরআর! কোড EACCES

    এনপিএম ইআরআর! ভুল 3

    এনপিএম ইআরআর! স্ট্যাক ত্রুটি: EACCES, সিমিলিংক '../lib/node_modules/n/bin/n'

    এনপিএম ইআরআর!

    এনপিএম ইআরআর! অতিরিক্ত লগিং বিবরণ পাওয়া যাবে:

    এনপিএম ইআরআর! /home/heberlz/npm-debug.log

    এনপিএম ইআরআর! ঠিক নেই কোড 0

  3. নিম্নলিখিত ফোল্ডারগুলির পুনরাবৃত্তভাবে ~ / .npm, / usr / lib / নোড, / usr / lib / নোড_মডিউলগুলি এবং নীচের সিমলিংকগুলির / ইউএসআর / বিন / নোড, / usr / বিন / নোডেজগুলির সম্পূর্ণরূপে কোনও সাফল্য নেই

সুডো ছাড়া ইয়েমেন এবং এর জেনারেটর ইনস্টল করা দরকার পরে সমস্যা হতে হবে না :(


ধন্যবাদ ফিল, এখন এটি আরও ভাল দেখাচ্ছে
হেবারএলজেড

2
আপনি যদি এনপিএম / ইউএসের
কর্নেল প্যানিক

এই কি আমার জন্য কাজ হল github.com/nodejs/node-v0.x-archive/issues/... :ln -s /usr/bin/nodejs /usr/bin/node
Loïc মিশেল

উত্তর:


318

উবুন্টু 12.04 এবং ক্রিস লির পিপিএ ব্যবহার করে আমার জন্য নিম্নলিখিত কাজগুলি ইনস্টল করার জন্য:

npm config set prefix '~/.npm-packages'

এবং $ হোম / .এনপিএম-প্যাকেজস / বিনকে $ PATH এ যুক্ত করা হচ্ছে

সংযোজন .bashrc

export PATH="$PATH:$HOME/.npm-packages/bin"

@passy থেকে https://stackoverflow.com/a/18277225 দেখুন


9
এটি দেখতে অনেক ক্লিনার সমাধানের মতো। আপনি যদি নিজের হোম ডিরেক্টরিতে সিস্টেম-ফোল্ডারগুলি পছন্দ না করেন তবে আপনি কোনও অবস্থান যেমন l / .local / share / npm ব্যবহার করতে পারেন।
জেরোহোইকে

এটি লক্ষ্য করা উচিত যে আপনি উপসর্গটি পরিবর্তন করার পরে, আপনাকে এনএমপি সহ, পূর্বে ইনস্টল করা সমস্ত বৈশ্বিক মডিউলগুলি পুনরায় ইনস্টল করা উচিত।
ডিজিমিড

এটি দুর্দান্ত বলে মনে হচ্ছে তবে ব্যবহারকারীর কাছে লিখিত অনুমতি দেওয়া আমার পক্ষে আরও সহজ মনে হয়েছিল /usr/lib/node_modules/। অথবা নোডেজ ইউনিক্স গ্রুপ তৈরি করা এবং সেই গোষ্ঠীকে সেই ডিরেক্টরিতে লেখার অনুমতি দেওয়ার জন্য এমনকি উপযুক্ত।
মেহুলকার

যুক্ত করার জন্য একটি ছোট বিবরণ হ'ল আপনাকে নিজেরাই ~ / npm ডিরেক্টরি তৈরি করতে হবে । অন্যথায়, এনপিএম একটি ENOENT ত্রুটি সহ প্রস্থান করবে।
জেসন ফার্নসওয়ার্থ 21

6
কেন এটি এনপিএমের জন্য ডিফল্ট নয়? ভাগ করে নেওয়ার জন্য ধন্যবাদ.
ডোরিয়ান

23

আপনার যদি ইতিমধ্যে $HOME/binআপনার পথে থাকে তবে একটি সহজ সমাধান হ'ল ...

npm config set prefix ~
  • নতুন নোড কমান্ডগুলি এখন আপনার $HOME/binডিরেক্টরিতে ইনস্টল হবে ।
  • আপনার পথ পরিবর্তন করার দরকার নেই!

যেহেতু এই আলোচনাটি চলমান সুরক্ষা ঝুঁকি হ্রাস করার বিষয়ে, তাই আপনারও sudoসচেতন হওয়া উচিত যে কোনও নোড অ্যাপ্লিকেশনটি এমন কোনও অ্যাপের নাম ইনস্টল করতে পারে যা আপনার মনে হচ্ছে যে আপনি যে নিবন্ধভুক্ত নোড প্যাকেজটির নাম ইনস্টল করছেন তা মেলে না। সুতরাং একটি সুরক্ষা ঝুঁকি রয়েছে যে একটি npm installএকটি বিদ্যমান সিস্টেম কমান্ড বা আপনার ইতিমধ্যে থাকা একটি প্রতিস্থাপন করবে $HOME/bin। যদি আপনি উদ্বিগ্ন হন তবে আপনি প্রথমে যে অ্যাপটি ইনস্টল করছেন তার ফাইলে ফাইল binএবং scriptsবৈশিষ্ট্যগুলি পরীক্ষা করে দেখুন package.json

সাধারণভাবে এটি সবচেয়ে নিরাপদ:

  • (ক) $HOME/binআপনার পথে সর্বশেষে অবস্থান করুন যাতে সিস্টেম কমান্ডগুলি বাতিল হয় না।
  • (খ) "অন্তর্ভুক্ত করবেন না।" বা আপনার কোনও আপেক্ষিক পথ $PATHযাতে আপনি দুর্ঘটনাক্রমে কোনও কমান্ড চালাবেন না যা বর্তমান ডিরেক্টরিতে ঘটে।

রেফারেন্স:


1
এর সাথে আরেকটি গুরুত্বপূর্ণ সুরক্ষা সমস্যাটি npmহ'ল আপনি যে github.comনোড প্যাকেজের জন্য রেপোতে দেখেন সেই উত্স কোডটি আপনি npm.orgরেজিস্ট্রি সার্ভার থেকে ইনস্টল করছেন এমন কোডটি নাও হতে পারে !
টনি ও'আগান

তত্ত্ব অনুসারে একটি ভাল কারুকৃত নোড প্যাকেজ আনন্দের সাথে ইনস্টল হবে ~/bin, কিছু নোড প্যাকেজ (বা তাদের নির্ভরযোগ্য প্যাকেজগুলি) কেবলমাত্র ইনস্টল হিসাবে পরীক্ষা করা হয়েছে sudoযাতে সচেতন হন যে আপনি কোনও অনির্ধারিত "ইনস্টলেশন পরিবেশ" সমস্যার মুখোমুখি হতে পারেন। অন্যান্য পরিবেশগত সমস্যার মতো (ওএসের পরিবর্তনের মতো) "একবার লিখুন, সর্বত্র পরীক্ষা করুন" নীতিটি এখনও সত্য holds
টনি ও'হাগান

এই পদ্ধতির অসুবিধা হল এনপিএম একটি অতিরিক্ত ডিরেক্টরি তৈরি করে, ~ / lib নামে পরিচিত। আপনার সংস্থার অনুশীলনের উপর নির্ভর করে এটি পছন্দসই হতে পারে না।
মিঃ এস

13

অক্টোবর ২০১৪ হিসাবে:

Node.js NodeSource উবুন্টু এবং ডেবিয়ান বাইনারি ডিস্ট্রিবিউশন থেকে পাওয়া যায় সংগ্রহস্থলের

curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs

এটাই.

পুরানো উত্তর:

সুডো ব্যবহার না করে দ্রুততম উপায়টি এখানে ইসাক দ্বারা বর্ণিত মত

আমি আপনাকে দৃdo়ভাবে উত্সাহ দিয়েছি sudo দিয়ে প্যাকেজ পরিচালনা না করার জন্য! প্যাকেজগুলি নির্বিচার স্ক্রিপ্টগুলি চালাতে পারে, যা প্যাকেজ ম্যানেজার কমান্ডকে চেনসো চুল কাটার মতো নিরাপদ করে তোলে। অবশ্যই, এটি দ্রুত এবং স্পষ্টভাবে যে কোনও প্রতিবন্ধকতাগুলি কাটিয়ে উঠবে, তবে আপনি সম্ভবত সেই বাধাটি সেখানে থাকতে চান।

পরিবর্তে একবার এটি করার পরামর্শ দিচ্ছি:

sudo chown -R $USER /usr/local

সম্পাদনা করুন:

বর্তমান ব্যবহারকারীর / ইউএসআর / স্থানীয় মালিকানা পরিবর্তন সম্পর্কিত সুরক্ষা সংক্রান্ত কিছু উদ্বেগ এবং কার্যকারিতা সীমাবদ্ধতা রয়েছে:

এই বলে যে, আপনি যদি sudo ব্যবহার না করে গ্লোবাল মডিউল ইনস্টল করতে চান তবে আমি উল্লিখিত চেয়ে আরও ভাল সমাধান দেখতে পাচ্ছি না। সুরক্ষা বনাম সহজেই ব্যবহার করা খুব বিস্তৃত বিষয়, এবং এর কোনও সহজ উত্তর নেই - এটি কেবল আপনার প্রয়োজনীয়তার উপর নির্ভর করে।


23
এটি একটি খারাপ ধারণা কারণ এটি / usr / স্থানীয় সমস্তকেই একক ব্যবহারকারীর অন্তর্ভুক্ত করে।
রিড জি আইন

4
@ রিডজি.লু যেমন উল্লেখ করেছে, এটি আসলেই একটি খারাপ ধারণা। কোনও নির্দিষ্ট ব্যবহারকারীর / usr / স্থানীয় এর hte মালিকানা পরিবর্তন করবেন না।
ক্রিস্টোফার

3
আমাকে রিড জি আইনটির সাথে একমত হতে হবে - পরিবর্তন / usr / স্থানীয় একটি খারাপ BAD BAD ধারণা। আমার ক্ষেত্রে আমি দিকগুলির দিকে চেয়ে ছিলাম এবং তা করেছিলাম: তখন স্মরণ করিয়ে দিয়েছি যে আমাকে অন্য একজনের বিকাশ করার সাথে এটি ভাগ করে নিতে হবে। আমি ফিরে গিয়েছিলাম এবং (আশা করি) সমস্ত পরিবর্তন পেয়েছি। এটি কেবল সুরক্ষাই নয়, কার্যকারিতাও।
লয়েড সারজেন্ট

3
সিস্টেমে কেবলমাত্র একজন ব্যবহারকারী থাকলে এই সমাধানের কোনও ক্ষতি হয় ?
কনারবোড

2
দুঃখিত, বোঝানো /usr/local/lib/node_modulesএবংnode
Creynders

11

বিশ্বব্যাপী এনপিএম মডিউলগুলি ইনস্টল করার সময় ত্রুটিগুলি এড়াতে আমি sudo ব্যবহার করে নোড ইনস্টল করেছিলাম , sudo এর সাথে Node কখনও ইনস্টল করা উচিত নয় U

আমার সমাধানটি এটিকে নোডটি পুনরায় ইনস্টল করা ছিল :

আমার ক্ষেত্রে নোড-ভি0.10.20.tar.gz # নোডেজেএস.আর.জে সর্বশেষতম স্থিতিশীল নোড উত্সগুলি ডাউনলোড করুন

tar -zxf নোড-ভি0.10.20.tar.gz # ইউনিকম্প্রেস উত্স

সিডি নোড-ভি0.10.20 # এন্টার বিহীন ফোল্ডার

sudo chown -R $ ব্যবহারকারী / usr / স্থানীয়

./ কনফিগার - প্রিফিক্স = / ইউএসআর / লোকাল এবং অ্যান্ড মেক অ্যান্ড মেক ইনস্টল

একটি বিষয় লক্ষণীয় যে কেবলমাত্র / usr / স্থানীয় ফোল্ডারের মালিকানা নেওয়া আমার ক্ষেত্রে কাজ করবে না কারণ নোড ইনস্টলেশন নিজেই sudo দিয়ে তৈরি হয়েছিল

ইয়োমন ইনস্টল করার শেষ পদক্ষেপ: # ইয়োমন-তে প্রচুর পরিমাণে এটি বলা হয়েছে যে "এনপিএম ইনস্টল-জি ইও" করা ইতিমধ্যে বোর এবং গ্রান্ট ইনস্টল করে, গ্রান্টের কিছু সাবমডিউল রয়েছে যা ব্যর্থ হয়, তাই আমি স্থির করেছিলাম যে এটি নিজেই ইনস্টল করে

এনপিএম ইনস্টল -জি বোর

এনপিএম ইনস্টল -জি গ্রান্ট

এনপিএম ইনস্টল -জিও

এনপিএম ইনস্টল -জি জেনারেটর-কৌণিক


তাত্ত্বিকভাবে দুর্দান্ত, তবে বিশ্বব্যাপী মডিউলগুলিতে অ্যাক্সেস পাওয়ার জন্য নোড তৈরি করতে এবং 4 টি অতিরিক্ত মডিউল ইনস্টল করতে বাধ্য করা ছাড়া একই প্রভাব অর্জন করার কোনও উপায় আছে কি?
ড্যান নিসেনবাউম

নির্বাচিত উত্তরটি আপনার প্রয়োজন মতো কাজ করে। 2 বছর আগে আমি এখনও এমনটি করেছি যখন এখনও অন্য কোনও সার্বজনীন সমাধান ছিল না, তবে এখন এটি অকেজো
হেবারএলজেড

5

আমি পরিবেশের পরিবর্তনশীল এবং শেল ওরফে দিয়ে এই সমস্যাটি সমাধান করেছি:

export NPM_PREFIX=$HOME/node
alias npmg="npm -g --prefix $NPM_PREFIX"

আমার জন্য এনপিএম .npmrc এ "উপসর্গ" কনফিগারেশন সেটিংসকে সম্মান জানায় না।


2

অনুরূপ এসও পোস্ট অনুসারে: এনপিএম sudo ছাড়াই ত্রুটি নিক্ষেপ করে

দেখে মনে হচ্ছে ~/.npmডিরেক্টরিতে আপনার মালিকানার সমস্যা থাকতে পারে ।

উত্তরটির মতোই চেষ্টা করুন:

sudo chown -R `whoami` ~/.npm

আসলে আমি কাজটি করতে না পারার সময় আমি কী চেষ্টা করেছি তার তিন ধাপে ব্যাখ্যা করার মতো এটি কার্যকর হয়নি, সমস্যাটি হ'ল আমি sudo ব্যবহার করে নোড ইনস্টল করেছি যা কিছু পরিস্থিতিতে সমস্যা তৈরি করতে পারে। একবার নোড মুছে ফেলা এবং এটির উত্স থেকে এটি পুনরায় ইনস্টল করার পরে, সবকিছু প্রত্যাশা অনুযায়ী কাজ শুরু করে!
HeberLZ

@ হাইবার এলজেড আমি মনে করি আপনি ঠিক বলেছেন, গতকাল রাতে আমি অন্য একটি মেশিনে এটি করার চেষ্টা করেছি এবং এটি কাজ করছে না। আমার সাথে অন্যান্য ডিল করার অনুমতি সংক্রান্ত সমস্যাও ছিল। এখনও উত্স থেকে এই ইনস্টলিং এনপিএম এ চালানো না ভাল উপায় কি তা নিশ্চিত হন না।
prasanthv

মন্তব্যে প্রশ্নের লিঙ্ক করুন বা বর্তমান প্রশ্নটিকে সদৃশ হিসাবে চিহ্নিত করুন। অন্যান্য প্রশ্নের উত্তর কপি-পেস্ট করতে সহায়তা করে না।
givanse

@ হ্যাবারলজেডটি আপনার তৈরি প্রশ্নের শিরোনাম হিসাবে সম্বোধন করার সাথে সাথে এই অ্যানওয়ারের ডাউনটি হ'ল ইনপ্রেসিয়েট।
সেবাস্তিয়ান সাস্ট্রে

আমি মনে করি না আমি কখন উত্তরটি হ্রাস করেছিলাম, তবে আমার বিশেষ ক্ষেত্রে আপনি যা লিখেছেন তা সমস্যার সমাধান করেনি, কারণ আমি কেন মনে করি আমি সম্ভবত উত্তরটি হ্রাস পেয়েছি। যেমন প্রশ্নের উপরে বলা হয়েছে: "নিম্নলিখিত ফোল্ডারগুলির পুনরাবৃত্তভাবে মালিকানা urs / .npm, / usr / lib / নোড, / usr / lib / নোড_মডিউলগুলি এবং নিম্নলিখিত চিহ্নগুলি / usr / বিন / নোড, / usr / বিন / কোনও সাফল্যের সাথে নোডেজগুলি "আমি .npm এবং অন্য সমস্ত ফোল্ডারগুলির সাফল্য ছাড়াই মালিকানা অর্জনের চেষ্টা করেছি
হবারএলজেড

2

এনপিএমের ডিরেক্টরিতে যাওয়ার পথটি সন্ধান করুন:

npm config get prefix

অনেক সিস্টেমে এটি / usr / স্থানীয় হবে।

এনপিএমের ডিরেক্টরিগুলির মালিককে বর্তমান ব্যবহারকারীর নামে পরিবর্তন করুন (আপনার ব্যবহারকারীর নাম!):

sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

এটি এনপিএম এবং অন্যান্য কিছু সরঞ্জাম (lib / node_modules, বিন এবং ভাগ) দ্বারা ব্যবহৃত সাব-ফোল্ডারগুলির অনুমতি পরিবর্তন করে।

সম্পূর্ণ বিবরণের জন্য লিঙ্কটি এখানে

https://docs.npmjs.com/getting-started/fixing-npm-permissions


গুরুত্বপূর্ণ। যুক্ত binএবং shareবন্ধনী মধ্যে এড়ানো চেষ্টা করুন । উপেক্ষা করার ফলে এই ফোল্ডারগুলির বর্তমান ব্যবহারকারীর মালিকানা পরিবর্তন হতে পারে এবং সিস্টেমে নতুন প্যাকেজ ইনস্টল sudoকরতে সমস্যা হতে পারে কারণ এর মালিকানাও বদলে যাবে
এআমেটোভ

এই প্রশংসা আমার সমস্ত ফাইল সিস্টেম ধ্বংস করে: (
ইউএ_

1

আপনি যদি কোনও বিকাশকারী মেশিনে থাকেন তবে এনভিএম ব্যবহারের বিষয়ে বিবেচনা করা আপনার পক্ষে ভাল ।

যদি তা না হয় তবে আপনি কেবল নিজের পছন্দসই প্যাকেজ ম্যানেজার ব্যবহার করে ইনস্টল করতে চান।

কেস যাই হোক না কেন, আমি এই উত্তরটি স্ট্যাকওভারফ্লোতে পরীক্ষা করার পরামর্শ দিই recommend


1

প্রকৃতপক্ষে, আমি কেবলমাত্র এমন কোনও ফোল্ডারটির অনুমতি পরিবর্তন করেছি যা রুটের মালিকানাধীন ছিল:

sudo chown -R $USER ~/.config/configstore

তারপরে আমি "এনপিএম ইনস্টল" এবং সুডো ছাড়াই "বওয়ার ইনস্টল" করতে পারতাম! ভাল কাজ!


0

লুবুন্টু 14.04.3 ব্যবহার করে, আমি .npm এবং এনপিএম উপসর্গের মালিকানা পরিবর্তন করার চেষ্টা করেছি, আমার পথ আপডেট করেছি, এনপিএম ইনস্টলড মডিউলগুলি সুডো ছাড়াই আমার ডিরেক্টরি ডিরেক্টরিতে ইনস্টল করেছিলাম তবে পথটি ভুল ছিল যাতে এম্বারের মতো মডিউলগুলি পাওয়া যায় নি, লিনাক্সব সমস্যা দ্রুত সমাধান করেছে নোড / এনএমপি-র জন্য এখানে সেটআপ গাইড


0

এই সমস্যা এবং একই কারণে সৃষ্ট অন্যান্য কারণে ব্যবহারকারীর জায়গায় নোড ইনস্টল করা সমাধান করা যেতে পারে।

আপনি এটি কেবল আপনার টার্মিনালে অনুলিপি করা এবং আটকানোতে পারেন

NODEJS_ROOT=${NODEJS_ROOT:-~/nodejs}
cd /tmp
wget -N http://nodejs.org/dist/node-latest.tar.gz && tar xzf node-latest.tar.gz
NODEJS_CURRENT=$(tar tf node-latest.tar.gz|head -1)
mkdir -p $NODEJS_ROOT/$NODEJS_CURRENT
cd $NODEJS_CURRENT
./configure --prefix=$NODEJS_ROOT/$NODEJS_CURRENT && make install
cd $NODEJS_ROOT
rm current 2> /dev/null # Removes current symbolic link, if any
ln -s $NODEJS_CURRENT current

নোডকে সর্বশেষ সংস্করণে আপডেট করার জন্য একই কমান্ডগুলি চালু করা যেতে পারে।

আপনার পরিবেশ সম্পাদনা করতে ভুলবেন না। শুধু একবার, না

echo "export NODEJS_ROOT=$NODEJS_ROOT"            >> $HOME/.bash_profile
echo 'export PATH=$NODEJS_ROOT/current/bin:$PATH' >> $HOME/.bash_profile
source $HOME/.bash_profile # reload your env, so you can use node right now

এই নিবন্ধটি কীভাবে সুডো ছাড়াই নোড.জেএস ইনস্টল করবেন তা প্রত্যাশা হিসাবে পরীক্ষা করে দেখুন ।

এই বিষয় সম্পর্কে আরও সাধারণ সমাধানের জন্য (অর্থাত্ স্থানীয়ভাবে সফ্টওয়্যার ইনস্টল করুন) ডটসটওয়্যারটি দেখুন


0

কেবল এনভিএম ব্যবহার করুন আপনি বিভিন্ন নোড সংস্করণগুলির মধ্যে গতিশীল পরিবর্তন করতে সক্ষম হবেন এবং এটি আপনার ব্যবহারকারীর জন্য স্থানীয়ভাবে ইনস্টল করা আছে। কোনও সুডোর দরকার নেই। আপনি নিশ্চিত হয়ে নিন যে আপনি পুরাতন নোডটি আগেই পরিষ্কার করে দিয়েছেন।

https://github.com/nvm-sh/nvm


-2

আমি সবচেয়ে ভাল সমাধানটি খুঁজে পেয়েছি হ'ল নোড.জেগুলি টার প্যাকেজ থেকে ব্যবহারকারীর হোম ডিরেক্টরিতে ইনস্টল করা এবং lib ফোল্ডারের অবস্থানের লিঙ্ক। এখানেই সব পাবেন আপনি যা করতে চান

এটি ডিফল্ট / usr / স্থানীয় / এর পরিবর্তে ode / .local / এর অধীনে নোডেজ ইনস্টল করবে

Add this to your ~/.npmrc (create the file if it doesn't exist already):

root =    /home/YOUR-USERNAME/.local/lib/node_modules
binroot = /home/YOUR-USERNAME/.local/bin
manroot = /home/YOUR-USERNAME/.local/share/man
Download the Nodejs source code from nodejs.org and install it under your ~/.local tree:

tar xf node......
cd node........
./configure --prefix=~/.local
make
make install

Create ~/.node_modules symlink. (This directory will be automatically searched when you load modules using require "module" in scripts. I'm not sure why Node doesn't search ~/.local/lib/node_modules by default.)

cd
ln -s .local/lib/node_modules .node_modules
Is ~/.local/bin in your path? Type

which npm
If it says ~/.local/bin/npm, you're done.

Otherwise, do this...

export PATH=$HOME/.local/bin:$PATH
...and add that line to your ~/.profile file, so it'll run every time you log in.

প্যাকেজ ইনস্টল করার সময় যদি আপনি এখনও মালিকানা বা অনুমতি ত্রুটির মুখোমুখি হন, তবে চালিয়ে ~ / .local / dir এর মালিকানা পরিবর্তন করুন

chown -R user:user ~/.local/

এখন আপনার 'এনপিএম' এর মাধ্যমে প্যাকেজ ইনস্টল করা ভাল হওয়া উচিত

দ্রষ্টব্য: উপরের সমস্ত কম্যান্ডের ব্যবহারকারী হিসাবে চালানো হবে। সুডো বা রুট লগিন ব্যবহার করবেন না

'/ ইউএসআর / এলআইবি /' এর অধীনে ফোল্ডারগুলির পারমিশন কখনও পরিবর্তন করবেন না। আনস্টেবল ওএসে যাবে


1
Tnovelli.net/blog/blog.2011-08-27.node-npm-user-install.html থেকে অনুলিপি ছাড়াই অনুলিপি করা হয়েছে ।
টুবু

-2

আমি পাওয়েল গ্রিজিবেকের ব্যাখ্যাগুলি খুব দৃinc়প্রত্যয়ী বলে মনে করি : তারা 3 টি সহজ সুডোর কমান্ডে সিদ্ধ হয়, আর কখনও বিশ্বব্যাপী এনপিএম ইনস্টলের জন্য সুডো ব্যবহার করতে হয় না:

sudo chown -R $(whoami) /usr/local/lib/node_modules
sudo chown -R $(whoami) /usr/local/bin
sudo chown -R $(whoami) /usr/local/share
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.