कैसे एक डेबियन आभासी मशीन में VirtualBox अतिथि परिवर्धन स्थापित करने के लिए


46

मैं एक डेबियन वर्चुअल मशीन (डेबियन 7, डेबियन 8 और डेबियन 9) में वर्चुअलबॉक्स अतिथि परिवर्धन स्थापित करने के लिए संघर्ष कर रहा हूं।

जवाबों:


66

डेबियन 9 के लिए TL; DR संस्करण मूल के रूप में है:

echo deb http://ftp.debian.org/debian stretch-backports main contrib > /etc/apt/sources.list.d/stretch-backports.list
apt update
apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)

यह वही है, वर्चुअलबॉक्स अतिथि परिवर्धन स्थापित हैं।

VirtualBox डेबियन 10 में उपलब्ध नहीं है, और buster-backportsया तो उपलब्ध नहीं कराया जाएगा । लुकास नुसबूम में पैकेजों का अनौपचारिक सेट है; यदि आप उनका उपयोग करना चाहते हैं, तो आपको उनके निर्देशों का पालन करना चाहिए (केवल लिंक - यदि लिंक वैध होना बंद हो जाता है, तो पैकेज संभवतः उपलब्ध नहीं हैं, इसलिए यहां दिए गए निर्देशों को कॉपी करना व्यर्थ है)।

अधिक विस्तार से, डेबियन पैकेजों का उपयोग करते हुए डेबियन 7, 8 और 9 का समाधान यहां दिया गया है:

  • डेबियन 7 और 8 के लिए, contribरिपॉजिटरी को सक्षम करें ; उदाहरण के लिए डेबियन 8, सुनिश्चित करें कि आपका /etc/apt/sources.listकुछ ऐसा है

    deb http://ftp.debian.org/debian jessie main contrib
    
  • डेबियन 9 के लिए, बैकपोर्ट को सक्षम करें contrib; ऐसा करने के लिए, एक पंक्ति जोड़ें

    deb http://ftp.debian.org/debian stretch-backports main contrib
    

    , /etc/apt/sources.list(या बेहतर अभी तक, एक stretch-backports.listफ़ाइल में /etc/apt/sources.list.d);

  • स्थापित करें virtualbox-guest-dkms, कर्नेल हेडर, और, वैकल्पिक रूप से, virtualbox-guest-x11(चित्रमय अतिथि उपयोगिताओं के लिए):

    sudo apt update
    sudo apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)
    

    ( दूसरी पंक्ति के -t stretch-backportsबाद installयदि आप डेबियन 9 का उपयोग कर रहे हैं)।

ऐसा इसलिए है सब है कि आवश्यक है - आप अपने वी एम में अतिथि अतिरिक्त माउंट, या इंस्टॉलर को चलाने की जरूरत नहीं है। आप शेल इनवोकेशन की तीन पंक्तियों को अपने Vagrantfile(या जो भी आप अपने वीएम को व्यवस्थित करने के लिए उपयोग करते हैं) जोड़ सकते हैं और उनके बारे में भूल सकते हैं।

virtualbox-guest-dkmsपैकेज को स्थापित करने से यह सुनिश्चित होगा कि उपयुक्त कर्नेल मॉड्यूल स्वचालित रूप से निर्मित होते हैं (और जब कर्नेल अपग्रेड किया जाता है तो पुन: निर्मित होता है), और अतिथि परिवर्धन स्थापित करें।

(ध्यान दें कि यह VM में उपयोग किए जा रहे अतिथि संस्करणों के संस्करण को आपके द्वारा VM में उपयोग किया जा रहा है , जो VM को चलाने वाले वर्चुअल बॉक्स के संस्करण से मेल नहीं खा सकता है - लेकिन अतिथि परिवर्धन अभी भी ठीक काम करना चाहिए।)


1
डेबियन 8.3 के लिए काम करने की पुष्टि की गई - 3.16.0-4-amd64 - 3.16.51-3 (2017-12-13) आप एक्स -11 को जोड़ने के बिना "सर्वर केवल" अतिरिक्त स्थापित कर सकते हैं -no- स्थापित करें वर्चुअलबॉक्स-गेस्ट-यूटिलिटीज़ वर्चुअलबॉक्स-गेस्ट-डीकेएमएस लिनेक्स-हेडर्स - $ (बिना नाम -r)
मार्को रॉसी

एक कुशल स्थापित करने पर वास्तव में मूल्यवान जानकारी! मैंने superuser.com/a/1025183/187346 में रिचर्ड द्वारा सुझाए गए अनुसार योनि-शब्द का उपयोग करने का विकल्प चुना क्योंकि मैं साझा फ़ोल्डरों के साथ आवारा त्रुटियों में भाग रहा था क्योंकि अतिथि परिवर्धन स्थापित नहीं किए गए थे लेकिन फ़ोल्डर निर्दिष्ट किए गए थे।
कॉलिन

53

अपने लिनक्स डेबियन वर्चुअल मशीन पर VirtualBox अतिथि अतिरिक्त स्थापित करने के लिए इन चरणों का पालन करें:

  1. टर्मिनल खोलें और बनें root( su); यदि आपने sudoसक्षम किया है, तो आप उदाहरण के लिए भी कर सकते हैं sudo -i; man sudoसभी विकल्पों के लिए देखें ):

    su
    

रूट पासवर्ड डालें और एन्टर प्रेस करें

वैकल्पिक रूप से आप उपयोग कर सकते हैं sudo -sयदि आपने इसे स्थापित किया है और उपयोगकर्ता जहाँ आप लॉग इन हैं, आवश्यक अधिकार हैं ...

  1. APT कैश अपडेट करें:

    apt-get update
    
  2. नवीनतम सुरक्षा अद्यतन स्थापित करें:

    यह चरण आपके सभी पैकेजों को अपग्रेड करेगा, इसलिए इसके बारे में बुद्धिमान रहें। पहले निम्नलिखित चरणों का प्रयास करें और वे काम करने के लिए पर्याप्त हो सकते हैं यदि नहीं, तो उन्नयन और पुन: प्रयास करें।

    apt-get upgrade
    
  3. इन आवश्यक पैकेजों को स्थापित करें:

    पैकेज build-essentialऔर module-assistantदोनों कर्नेल मॉड्यूल को संकलित करने में सक्षम होने के लिए आवश्यक हैं और इसलिए वर्चुअलबॉक्स लिनक्स अतिथि परिवर्धन को स्थापित करते समय आपको उनके पास होना चाहिए। इसलिए, इस कमांड को काम करने के लिए आवश्यक हेडर और पैकेज (कंपाइलर और लाइब्रेरी) मिलेंगे। ध्यान दें, कि अपने वर्चुअलबॉक्स लिनक्स अतिथि परिवर्धन को स्थापित करने के बाद आप कुछ पैकेजों के साथ-साथ लिनक्स हेडर को भी छोड़ देंगे, जिन्हें आप बाद में हटा सकते हैं या नहीं। मेरे मामले में उन्हें चोट नहीं आई, लेकिन सिस्टम की ख़ुशी के लिए, आप खेलने के बाद उठाना चाहें।

    apt-get install build-essential module-assistant
    
  4. कर्नेल मॉड्यूल के निर्माण के लिए अपने सिस्टम को कॉन्फ़िगर करें:

    m-a prepare
    
  5. अतिथि परिवर्धन डालें ISO:

    मेनू डिवाइसेस का विस्तार करें और सम्मिलित करें अतिथि परिवर्धन सीडी छवि पर क्लिक करें ...

  6. यह स्वचालित रूप से माउंट होना चाहिए, लेकिन अगर किसी भी कारण से यह नहीं होता है:

    mount /media/cdrom
    
  7. निम्नलिखित स्क्रिप्ट चलाएँ:

    sh /media/cdrom/VBoxLinuxAdditions.run
    
  8. सिस्टम को पुनरारंभ करें:

    reboot
    

3
यह डेबियन 9. के लिए काम करता है
ओरटोमला लोकनी

1
डेबियन 9 पर, इसने यह कहते हुए एक त्रुटि संदेश दिया "आपके वर्तमान लिनक्स कर्नेल के स्रोतों को खोजने में असमर्थ।"
user2800708 14

2
आपको कर्नेल sudo apt-get update && sudo apt-get install linux-headers-`uname -r`
हेडर्स

यह भी जाँच लें कि आपके पास वर्चुअलबॉक्स इंस्टॉलेशन
हेडन थ्रिंग

2
कमांड m-a prepareको linux-headersपैकेज को खींचना चाहिए , सभी निर्देश एक डेबियन 9 इंस्टॉल में ठीक काम करते हैं।
अलेमानी

5

डेबियन रिपॉजिटरी से वर्चुअलबॉक्स गेस्ट अडॉन स्थापित करने का एक विकल्प विक्रेता से स्रोतों का उपयोग करना है। रिपॉजिटरी से पुराने और अधिक स्थिर कोड प्रदान करने की उम्मीद की जाती है, जबकि विक्रेता के स्रोतों से नवीनतम सुविधाओं और सुरक्षा अपडेट होने वाले हैं।

मैंने डेबियन 9.4 पर लिनक्स कर्नेल 4.9.0-4 पर चलने वाले वर्चुअलबॉक्स 5.0.30 और ओएस एक्स 11.11.6 का उपयोग करते हुए आगामी निर्देशों को सफलतापूर्वक आज़माया है। सबसे पहले, वर्चुअल मशीन में गेस्ट एडंस आईएसओ इमेज अटैच करें और फिर इसे शुरू करें। बूटअप के बाद, छवि की सामग्री अंदर उपलब्ध होगी /media/cdrom0/। सबसे पहले, दो पैकेज और उनकी निर्भरताएं हैं जिन्हें स्थापित किया जाना है:

$ sudo apt-get install linux-headers-$(uname -r) build-essential

फिर, आवश्यक कर्नेल मॉड्यूल को बनाने और स्थापित करने वाले विक्रेता को प्रदान की गई स्क्रिप्ट चलाएं:

$ cd /media/cdrom0/
$ sudo sh VBoxLinuxAdditions.run

वर्चुअल मशीन को रिबूट करें और आनंद लें!


4

डेबियन 9 में, वर्चुअलबॉक्स-गेस्ट-डीकेएमएस पैकेज अस्थिर (साइड) रिपॉजिटरी में है।

  • इसे इसमें जोड़ें /etc/apt/sources.list:

    deb http://http.us.debian.org/debian sid main non-free contrib
    
  • रिपॉजिटरी अपडेट करें और पैकेज स्थापित करें

    sudo apt-get update
    sudo apt-get install virtualbox-guest-dkms
    
  • वैकल्पिक रूप से: फुट रिपॉजिटरी को अक्षम करें, क्योंकि इसमें उन पैकेजों के लिए अपडेट हैं जो आप नहीं चाहते हैं।


यह तब तक काम करता दिखाई दिया जब तक कि मैंने वर्चुअल मशीन को रिबूट नहीं किया; यह वापस आने के बाद, यह अभी भी /vagrantVM में वर्तमान होस्ट निर्देशिका बढ़ते के बजाय "rsync" d है । चूँकि यह संपूर्ण कारण था कि मैं अतिथि परिवर्धन चाहता था, इसलिए यह अभी भी प्रभावी रूप से टूटा हुआ है।
ऑफबी 1

आमतौर पर स्ट्रेच का उपयोग करने के लिए स्ट्रेच-बैकपोर्ट बेहतर नहीं होते हैं?
कार्ल बार्टेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.