2013-12-13 5 views
6

मैं उबंटू मशीन पर Node.js इंस्टॉल कर रहा हूं। मैं सरकारी निर्देशों का पालन किया:Node.js bash:/usr/local/bin/node: अनुमति अस्वीकार

./configure && make && sudo make install 

तो, मैं /usr/local/bin/node और सभी निर्भरता में नोड द्विआधारी मिला है। लेकिन जब मैं इसे कमांड लाइन से चलाता हूं तो मुझे अनुमति त्रुटि मिलती है:

> node 
bash: /usr/local/bin/node: Permission denied 

मैं इसे कैसे ठीक कर सकता हूं? मैं इसे अपने खाते के तहत कैसे चला सकता हूं? sudo node भी काम नहीं करता है।

+2

'ls -l/usr/local/bin/node' आउटपुट क्या करता है? – rossipedia

+1

'-rwxr-x --- 1 रूट रूट 11105680 दिसंबर 13 09:46/usr/local/bin/node'। ओह, मैं देखता हूं, 'चोटी'? यह काम किया! @rossipedia इसे उत्तर में डाल दिया, मैं इसे हल के रूप में चिह्नित करूंगा। धन्यवाद! – demi

+1

मैं उस पर अनुमतियों को बदलने के लिए 'chown' का उपयोग नहीं करता। समस्या यह है कि आपके पास केवल रूट और रूट के समूह के लिए + x अनुमतियां हैं। आमतौर पर इसे '-rwxr-xr-x' पढ़ना चाहिए, जो सभी को अनुमतियों को पढ़ने और निष्पादित करने देता है। @ hek2mgl का उत्तर नीचे सही है। – rossipedia

उत्तर

13

आपको others के लिए पढ़ने और निष्पादन योग्य अनुमतियों की आवश्यकता है। मुद्दा:

sudo chmod +rx $(which node) 

या

sudo chmod 755 $(which node) 

हालांकि, सामान्य रूप से make install स्थापित करना चाहिए कि अनुमतियाँ। ऐसा लगता है कि Makefile में कुछ गलत है।

+1

+1 मुझे इस 'यू' का उपयोग पसंद है, बहुत चालाक – slezica

+0

Thx :) संपूर्ण जीएनयू उपयोगकर्तालैंड शानदार है! इसे प्यार करना बंद नहीं कर सकता :) – hek2mgl

+0

मेरे पास उपयोगकर्ता के लिए निष्पादन योग्य नहीं है ('ls -l' के बारे में उत्तर के तहत टिप्पणी देखें)। मेरे लिए, 'चोउन' काम किया (यह 'मूल रूट' था जैसा कि आप देख सकते हैं)। 'chmod' मदद नहीं की। – demi

1

OSX टर्मिनल का कोई ज्ञान के साथ लोगों के लिए, इसे खोलने और इन आदेशों का उपयोग:

su yourusername 
su chmod 755 /usr/local/bin/node 
sudo node install... 

इस फ़ोल्डर में पठनीय/लिखने योग्य और sudo नोड आदेश से पहले यह व्यवस्थापक अधिकार के तहत चलाए जा कर देगा कर देगा।

+0

यह 'सूडो नोड इंस्टॉल 'चलाने के बिना काम करता है। –

संबंधित मुद्दे