आप साझा फ़ोल्डर का उपयोग कर रहे हैं, इसलिए आपको उस सुविधा का समर्थन करने के लिए अपने वर्चुअल मशीन के अंदर VirtualBox अतिथि अतिरिक्त इंस्टॉल करने की आवश्यकता है ।
आवारा
यदि आप Vagrant (OS X :) का उपयोग कर रहे हैं brew cask install vagrant
, तो चलाएं:
vagrant plugin install vagrant-vbguest
vagrant vbguest
यदि यह विफल रहता है, तो लॉग की जाँच करें, जैसे
vagrant ssh -c "cat /var/log/vboxadd-install.log"
हो सकता है कि आप सिर्फ कर्नेल हेडर फ़ाइलों को याद कर रहे हों।
वीएम
वीएम के अंदर, आपको अतिथि अतिरिक्त, कर्नेल हेडर स्थापित करना चाहिए और यदि कर्नेल एक्सटेंशन चल रहा है तो सेवा शुरू करें और दोहराएं।
यह अतिथि ऑपरेटिंग सिस्टम पर निर्भर करता है, इसलिए यहां संक्षिप्त चरण दिए गए हैं:
कर्नेल स्थापित करें हेडर शामिल करें (VBoxLinuxAdditions द्वारा आवश्यक)।
- RHEL:
sudo apt-get update && sudo apt-get install kernel-devel
- CentOS:
sudo yum update && sudo yum -y install kernel-headers kernel-devel
अतिथि जोड़ स्थापित करें (यह ऑपरेटिंग सिस्टम पर निर्भर करता है)।
उबंटू: sudo apt-get -y install dkms build-essential linux-headers-$(uname -r) virtualbox-guest-additions-iso
यदि आप इसे नहीं ढूँढ सकते हैं, तो जाँच करें aptitude search virtualbox
।
डेबियन :sudo apt-get -y install build-essential module-assistant virtualbox-ose-guest-utils
यदि आप इसे नहीं ढूँढ सकते हैं, तो जाँच करें dpkg -l | grep virtualbox
।
VM (जैसे ) के अंदर iso फ़ाइल डाउनलोड करके wget
और इसे स्थापित करके, उदाहरण के लिए, मैन्युअल रूप से
wget http://download.virtualbox.org/virtualbox/5.0.16/VBoxGuestAdditions_5.0.16.iso -P /tmp
sudo mount -o loop /tmp/VBoxGuestAdditions_5.0.16.iso /mnt
sudo sh -x /mnt/VBoxLinuxAdditions.run # --keep
अतिरिक्त डिबग: cd ~/install && sh -x ./install.sh /mnt/VBoxLinuxAdditions.run
दोहराएं कि कर्नेल एक्सटेंशन ऊपर और चल रहे हैं:
सेवा शुरू / पुनः आरंभ करें:
- मैन्युअल रूप से:
sudo /opt/VBoxGuestAdditions*/init/vboxadd setup
( sudo sh -x
डिबग में जोड़ें )
- डेबियन:
sudo /etc/init.d/vboxadd-service start
- फेडोरा:
sudo /etc/init.d/vboxdrv setup
- CentOS:
sudo service VBoxService start
मुख्य अतिथि परिवर्धन मॉड्यूल का निर्माण
यदि ऊपर काम नहीं किया, तो इसे ठीक करने के लिए और अधिक परिष्कृत कदम हैं। यह मानता है कि आपने पहले ही VBoxGuestAdditions स्थापित किया है (जैसा कि ऊपर दिखाया गया है)।
सबसे आम कारण है कि बढ़ते साझा किए गए फ़ोल्डर काम नहीं करता है जो कि गेस्ट एडिशंस मॉड्यूल के निर्माण से संबंधित है जो विफल रहा। यदि /var/log/vboxadd-install.log
आप निम्नलिखित त्रुटि में हैं:
चालू चल रहे कर्नेल के हेडर नहीं मिले।
इसका मतलब है कि या तो आपने कर्नेल स्रोत स्थापित नहीं किए हैं, या वे नहीं मिल सकते हैं।
यदि आप उन्हें पहले से ही ऊपर बताए अनुसार स्थापित कर चुके हैं, तो यह कमांड चलाएँ:
$ sudo sh -x /opt/VBoxGuestAdditions-5.0.16/init/vboxadd setup 2>&1 | grep KERN
+ KERN_VER=2.6.32-573.18.1.el6.x86_64
+ KERN_DIR=/lib/modules/2.6.32-573.18.1.el6.x86_64/build
इसलिए मूल रूप से vboxadd
स्क्रिप्ट आपके कर्नेल स्रोतों को निम्नलिखित dir पर उपलब्ध होने की उम्मीद कर रही है:
ls -la /lib/modules/$(uname -r)/build
जाँच लें कि क्या कर्नेल डायर मौजूद है (मौजूदा फ़ोल्डर में सांकेतिक लिंक)। यदि यह नहीं है, तो कृपया उन्हें सही फ़ोल्डर में स्थापित करें (जैसे /usr/src/kernels
)।
इसलिए vboxadd
स्क्रिप्ट आपके कर्नेल स्रोत निर्देशिका में प्रवेश कर सकती है और चला make kernelrelease
सकती है, मूल्य प्राप्त कर सकती है और अपने वर्तमान कर्नेल संस्करण के साथ तुलना कर सकती है।
यहाँ तर्क है:
KERN_VER=`uname -r`
KERN_DIR="/lib/modules/$KERN_VER/build"
if [ -d "$KERN_DIR" ]; then
KERN_REL=`make -sC $KERN_DIR --no-print-directory kernelrelease 2>/dev/null || true`
if [ -z "$KERN_REL" -o "x$KERN_REL" = "x$KERN_VER" ]; then
return 0
fi
fi
यदि कर्नेल संस्करण स्रोतों से मेल नहीं खाता है, तो शायद आप अपने लिनक्स कर्नेल को अपग्रेड करें (यदि स्रोत आपके कर्नेल की तुलना में नए हैं)।
CentOS
प्रयत्न:
vagrant plugin install vagrant-vbguest vagrant vbgues
यदि काम नहीं करेगा, तो CentOS के लिए निम्नलिखित मैनुअल चरणों को आज़माएँ:
$ sudo yum update
$ sudo yum install kernel-$(uname -r) kernel-devel kernel-headers # or: reinstall
$ rpm -qf /lib/modules/$(uname -r)/build
kernel-2.6.32-573.18.1.el6.x86_64
$ ls -la /lib/modules/$(uname -r)/build
$ sudo reboot # and re-login
$ sudo ln -sv /usr/src/kernels/$(uname -r) /lib/modules/$(uname -r)/build
$ sudo /opt/VBoxGuestAdditions-*/init/vboxadd setup