वर्चुअलबॉक्स कर्नेल अपग्रेड के बाद शुरू नहीं हो रहा है


15

कल मुझे कर्नेल अपग्रेड मिला और रिबूट के बाद, वर्चुअलबॉक्स ने काम करना बंद कर दिया।

यहाँ मेरी सिस्टम जानकारी है (कर्नेल अपग्रेड के बाद):

matteo@workstation:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
matteo@workstation:~$ uname -a
Linux workstation 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

मैंने VirtualBox को बहुत पहले स्थापित किया था

sudo apt install linux-headers-$(uname -r)
sudo apt install virtualbox-dkms virtualbox virtualbox-qt

दैनिक आधार पर उपयोग किया जाता है और कर्नेल अपडेट के साथ कभी समस्या नहीं हुई। अब मुझे जो त्रुटि प्राप्त हुई है

matteo@workstation:~$ sudo modprobe vboxdrv
modprobe: ERROR: could not insert 'vboxdrv': Exec format error
matteo@workstation:~$ dmesg | tail -n 1
[ 1413.167311] vboxdrv: version magic '4.4.0-116-generic SMP mod_unload modversions ' should be '4.4.0-116-generic SMP mod_unload modversions retpoline '

मैं यह त्रुटि संदेश के साथ एक मंच पोस्ट पाया यहाँ से तीन दिन पहले, दुर्भाग्य से संकल्प के बिना। इसके बाद मैंने उबंटू रेपो से वर्चुअलबॉक्स पैकेट को हटाने की कोशिश की, और इस प्रक्रिया का उपयोग करके नवीनतम 5.2 को स्थापित किया । हालांकि, मशीन को रिबूट करने के बाद भी, त्रुटि बनी हुई है।

मैं इस मामले में क्या कर सकता हूं?


यह भी (जैसे अन्य मॉड्यूल के साथ क्या हो रहा है bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937 और answers.launchpad.net/ubuntu/+question/664826 )
ricab

2
पल के लिए एक वर्कअराउंड पिछले कर्नेल (4.4.0-112) को ग्रब में लोड करना है।
रिकाब

@Ricab द्वारा सुझाव देने का तरीका जानने वालों के लिए: बस shiftबूट करते समय, "उबंटू के लिए उन्नत विकल्प" चुनें और मेनू से एक पुराने कर्नेल संस्करण का चयन करें, जैसा कि यहां बताया गया है । मैं पुष्टि कर सकता हूं कि मेरे पिछले कर्नेल संस्करण (4.4.0-112) में प्रश्न में वर्णित समस्या नहीं है, इसलिए यह एक समाधान जारी होने तक व्यवहार्य है।
matpen

16.04 में यह Escकुंजी है।
D.Bugger

@ मेरे 16.04 पर D.Bugger shiftकाम करता है। यह मेरा मामला नहीं है, लेकिन मैंने कुछ लोगों को केवल "राइट शिफ्ट" या "लेफ्ट शिफ्ट" के साथ काम करने के लिए पढ़ा है।
मैट फेन

जवाबों:


9

मैं उसी समस्या का सामना कर रहा था। कर्नेल अपग्रेड के बाद मेरा gcc संस्करण 5.4.1 दिखा रहा था। इस संस्करण को 5.4.0 पर डाउनग्रेड करने से मुझे vboxdrv कर्नेल मॉड्यूल के लिए रेटपॉलिन रखने में मदद मिली।

इस लिंक के बाद के चरणों ने मुझे मेरी समस्या हल करने में मदद की:

sudo apt-get install ppa-purge
sudo ppa-purge ppa:ubuntu-toolchain-r/test
#Select gcc version 5 using update-alternatives manually
sudo update-alternatives --config gcc

इन चरणों के बाद gcc --version होना चाहिए (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) 5.4.0 20160609

फिर सभी नए लिनक्स हेडर (4.4.0-116) को शुद्ध करें

sudo apt-get purge linux-headers-4.4.0-116 linux-headers-4.4.0-116-generic linux-image-4.4.0-116-generic linux-image-extra-4.4.0-116-generic linux-signed-image-4.4.0-116-generic

फिर से उन्हें स्थापित करें

sudo apt-get install linux-generic linux-signed-generic

फिर वर्चुअलबॉक्स को फिर से स्थापित करें, मैंने इस बार नवीनतम वर्चुअलबॉक्स-5.2 स्थापित किया है, लेकिन वर्चुअलबॉक्स के डिफ़ॉल्ट 5.0 संस्करण को भी ठीक काम करना चाहिए।

sudo apt-get purge virtualbox-dkms virtualbox virtualbox-qt
sudo apt-get install virtualbox-5.2

और, हमारे पास नवीनतम मॉड्यूल में रेटपोलिन का समर्थन है

anirudh@AHDRMD34579:~$ modinfo vboxdrv 
filename:       /lib/modules/4.4.0-116-generic/misc/vboxdrv.ko
version:        5.2.6 r120293 (0x00290000)
license:        GPL
description:    Oracle VM VirtualBox Support Driver
author:         Oracle Corporation
srcversion:     4880B21EFF1B605D6402982
depends:        
vermagic:       4.4.0-116-generic SMP mod_unload modversions retpoline 
parm:           force_async_tsc:force the asynchronous TSC mode (int)

उत्कृष्ट काम ने मेरी मशीनों तक पहुंच के बिना 6 महीने के बाद मेरी मदद की
जॉर्ज उदेन

मैं तुम्हें दुनिया में सभी पदों देना चाहता हूँ !!!!! :-) लेकिन मैं केवल एक बार आपको दुर्भाग्य से उबार सकता हूँ।
शॉल्टी

4

@Ricab की टिप्पणी में सूचीबद्ध संबंधित समस्या को नए कर्नेल के साथ एक समस्या का पता लगाया गया है जो कर्नेल मॉड्यूल को सफलतापूर्वक संकलित करने के लिए gcc के एक निश्चित संस्करण स्तर की आवश्यकता होती है।

मेरे सिस्टम पर gcc अपडेट को कर्नेल अपडेट के बाद धकेल दिया गया, जिससे recompiles विफल हो गए।

एक बार मूल कारण का पता चलने के बाद, मैं नए कर्नेल को अनइंस्टॉल करके और पुनः स्थापित करके सिस्टम को ठीक करने में सक्षम था। यह मेरे ग्राफिक्स ड्राइवरों को तय करता है, लेकिन मुझे sudo /sbin/vboxconfigनए कर्नेल में बूट करने के बाद वर्चुअलबॉक्स को ठीक करने के लिए जारी करना था ।

मेरा सिस्टम 14.04 है, इसलिए मैं आपको आपके 16.04 सिस्टम के लिए gcc के उचित संस्करण के रूप में सलाह नहीं दे सकता, लेकिन इसकी चर्चा https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937 पर की गई है


लिंक के लिए आपको धन्यवाद। दुर्भाग्य से, यह ज़ेनिल के लिए मेरे मामले में काम नहीं करता है (और मैं अकेला नहीं हूं )। मुझे हाल ही में कोई जीसीसी अपग्रेड नहीं मिला, लेकिन मैं पहले से ही हूं gcc 5.4.1, और यहां तक ​​कि साथ की कोशिश की gcc 7.2.0
मैट फेन


@jfs ठीक है, हालाँकि मुझे ppa gcc की आवश्यकता है इसलिए मैं अभी परीक्षण नहीं कर पा रहा हूँ।
मैट फेन

-1

मुझे भी हाल ही में यह समस्या हुई थी और मैंने इसके बारे में एक प्रश्न पोस्ट किया था। मैंने कुछ खुदाई की और यह वास्तव में एक ज्ञात मुद्दा है।

बग रिपोर्ट मेरे लिंक में है।

वर्चुअलबॉक्स ने अचानक काम करना बंद कर दिया है

मुझे लगता है कि इस मुद्दे को तय होने तक सामान्य सहमति 4.4 कर्नेल में बूट करना है। (यह निश्चित रूप से मेरे लिए सबसे आसान समाधान है।)


1
यदि आपका उत्तर मूल रूप से किसी अन्य प्रश्न का संदर्भ है, तो बेहतर होगा कि आप 15 प्रतिष्ठा अर्जित करने के बाद इस प्रश्न को दूसरे के डुप्लिकेट के रूप में चिह्नित करें । यदि आपके पास प्रतिष्ठा है, तो उस उत्तर (नों) के लिए वोट करना न भूलें जो आपको उपयोगी लगे!
डेविड फ़ॉस्टर

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