मैं एक योनि सेटअप बना रहा हूं, और इसका हिस्सा आरबीएनवी स्थापित कर रहा है। मैं अपने सभी शेफ कुकबुक का प्रबंधन करने के लिए लाइब्रेरियन-शेफ का उपयोग कर रहा हूं, और यह आरबीएनवी और रूबी-बिल्ड स्थापित करता है।क्या rbenv को सिस्टम-व्यापी, या उपयोगकर्ता स्तर पर स्थापित किया जाना चाहिए?
हालांकि, जब मैंने अपने Vagrant VM में ssh करने की कोशिश की और ruby -v
टाइप किया तो मुझे मानक सिस्टम-स्थापित ruby 1.8.7 (2012-02-08 patchlevel 358) [x86_64-linux]
मिला। यह सोचकर कि शायद rbenv स्थापित नहीं किया गया था, मैं rbenv versions
चल कोशिश की, लेकिन rbenv वास्तव में स्थापित किया गया था:
[email protected]:~$ rbenv versions
* system (set by /opt/rbenv/version)
तो फिर मैं rbenv install [version]
की कोशिश की:
[email protected]:~$ rbenv install 1.9.3-p327
[...]
BUILD FAILED
[...]
test -z "/opt/rbenv/versions/1.9.3-p327/include" || /bin/mkdir -p "/opt/rbenv/versions/1.9.3-p327/include"
/bin/mkdir: cannot create directory `/opt/rbenv/versions/1.9.3-p327': Permission denied
कि Permission denied
साथ विफल रहा है। मैंने sudo
:
sudo rbenv install 1.9.3-p327
और फिर काम किया। तब मैं rbenv versions
फिर से चलाने की कोशिश की:
[email protected]:~$ rbenv versions
* system (set by /opt/rbenv/version)
लेकिन यह अभी भी कहते हैं केवल system
रूबी स्थापित किया गया है। हालांकि, अगर मैं sudo
साथ इसे चलाने:
[email protected]:~$ sudo rbenv versions
* system (set by /home/vagrant/.rbenv/version)
1.9.3-p327
rbenv versions
अब पता चलता 1.9.3
स्थापित किया गया था।
तो ऐसा लगता है कि एक डिस्कनेक्ट होता है, जिसमें आरबीएनवी और मेरा रूबी संस्करण अब सिस्टम स्तर पर स्थापित है, न कि उपयोगकर्ता स्तर पर।
मैं rbenv-cookbook का उपयोग कर रहा हूं। मैं आरएफएनवी को शेफ के साथ स्थापित करना चाहता हूं, क्योंकि यह मुझे इसे मैन्युअल रूप से सेट करने से बचाता है, पोस्ट-इंस्टॉल करें।
मेरा दूसरा मुद्दा यह है कि यह सब कुछ है जो रूबी-नियंत्रित है, जैसे gem
, वही डिस्कनेक्ट भी पीड़ित है।
[email protected]:~$ gem install bundler
Fetching: bundler-1.3.5.gem (100%)
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /opt/vagrant_ruby/lib/ruby/gems/1.8 directory.
"सही और उचित विधि" लिंक टूटा हुआ है। – Volte