ไม่สามารถติดตั้ง VirtualBox เนื่องจากโมดูลเคอร์เนลหายไป


16

ฉันกำลังพยายามติดตั้ง VirtualBox บน Ubuntu ของฉัน

ฉันพยายามครั้งแรกsudo apt-get install virtualbox-oseใน terminal แต่หลังจากขั้นตอนการกำหนดค่ามันล้มเหลวด้วยข้อผิดพลาด :

ไม่พบโมดูลที่เหมาะสมสำหรับการเรียกใช้เคอร์เนลเมื่อดำเนินการเริ่มต้นvirtualboxฉันได้รับข้อผิดพลาดนี้: คำเตือน: ไม่มีอุปกรณ์ตัวอักษร / dev / vboxdrv โปรดติดตั้งแพ็คเกจ virtualbox-ose-dkms และส่วนหัวที่เหมาะสมซึ่งส่วนใหญ่เป็น linux-headers-generic

คุณจะไม่สามารถเริ่มต้น VM ได้จนกว่าปัญหานี้จะได้รับการแก้ไข

ดังนั้นฉันลองแพคเกจจากhttp://www.virtualbox.org/แต่การเริ่ม VirtualBox ล้มเหลวด้วย:

คำเตือน: โมดูลเคอร์เนล vboxdrv ไม่ได้ถูกโหลด อาจไม่มีโมดูลสำหรับเคอร์เนลปัจจุบัน (2.6.38-8-generic-pae) หรือไม่สามารถโหลดได้ กรุณาคอมไพล์โมดูลเคอร์เนลอีกครั้งและติดตั้งโดย

  sudo /etc/init.d/vboxdrv setup

คุณจะไม่สามารถเริ่มต้น VM ได้จนกว่าปัญหานี้จะได้รับการแก้ไข

ดังนั้นฉันจึงวิ่งsudo /etc/init.d/vboxdrv setupแต่มันก็ล้มเหลวด้วย:

* Stopping VirtualBox kernel modules                                                           [ OK ] 
* Uninstalling old VirtualBox DKMS kernel modules                                                            [ OK ] 
* Trying to register the VirtualBox kernel modules using DKMS                                                       
Error! Your kernel headers for kernel 2.6.38-8-generic-pae cannot be found at
/lib/modules/2.6.38-8-generic-pae/build or /lib/modules/2.6.38-8-generic-pae/source.

* Failed, trying without DKMS
* Recompiling VirtualBox kernel modules                                                                             
* Look at /var/log/vbox-install.log to find out what went wrong

/var/log/vbox-install.logเนื้อหาของ

ขณะที่ฉันติดอยู่ฉันก็ลองติดตั้งkernel-develด้วยyumแต่ก็ไร้ผล:

root@ubuntu# yum install kernel-devel
Setting up Install Process
No package kernel-devel available.
Nothing to do

ตอนนี้ฉันไม่รู้ว่าจะแก้ไขอย่างไร ความคิดใด ๆ


1
yum? คุณใช้อูบุนตูหรือไม่? ที่บอกว่าคุณต้องการkernel-devel?
enzotib

Pffft ติดตั้ง Virtualbox จากที่เก็บ
nickguletskii

ฉันยังคงติดอยู่ที่ Yum :(
binW

คุณช่วยโพสต์เนื้อหาของ/var/log/kern.logบนpaste.ubuntu.comและโพสต์ลิงค์ที่นี่ได้ไหม?
Lekensteyn

1
@Lekensteyn นี่คือ/var/log/kern.log
SoftTimur

คำตอบ:


18

การทำทุกอย่างในฐานะรูทโดยการใช้งานsuและตัวyumจัดการแพ็กเกจเป็นสิ่งที่เหมาะกับการใช้งาน Redhat แต่ไม่ใช่ Ubuntu ใน Ubuntu คุณเรียกใช้คำสั่งในฐานะรูทโดยการใส่คำสั่งsudoล่วงหน้าด้วย ตัวจัดการแพคเกจที่ใช้โดย Ubuntu นั้นเหมาะสม

ในการติดตั้ง VirtualBox ให้เรียกใช้:

sudo apt-get install virtualbox-ose

linux-headers-genericนี้จะดูแลการอ้างอิงเช่นส่วนหัวเคอร์เนลซึ่งรวมอยู่ในแพคเกจ หากคุณเป็นเคอร์เนล PAE คุณจะต้องติดตั้งส่วนหัวก่อน (ในกรณีของคุณlinux-headers-2.6.38-8-generic-pae) ซึ่งสามารถทำได้ด้วย:

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

uname -r ให้รุ่นเคอร์เนลที่โหลดและบันทึกคุณจากการป้อนรุ่นเคอร์เนลด้วยตนเอง


ขอบคุณสำหรับคำตอบของคุณฉันลองใช้วิธีนี้ตั้งแต่แรก แต่มีปัญหาคุณช่วยลองดูหน่อยได้ไหม? askubuntu.com/questions/49052/…
SoftTimur

1
virtualbox-4.0ไม่ได้อยู่ในที่เก็บเริ่มต้น คุณติดตั้ง PPA ของบุคคลที่สามหรือไม่ ลบที่ PPA virtualbox-oseหรือแพคเกจและติดตั้ง
Lekensteyn

@SoftTimur คุณไม่ควรโพสต์คำถามที่ซ้ำกันหากพวกเขาเกี่ยวข้องกับปัญหาเดียวกันพวกเขาอาจถูกตั้งค่าสถานะเช่นนี้
Thomas Ward

พวกขอบคุณสำหรับคำตอบของคุณฉันได้แก้ไข 2 คำถามที่เชื่อมโยง ... หวังว่าจะมีวิธีแก้ปัญหา ...
SoftTimur

1
@SoftTimur: อย่าลืมล้าง virtualbox ก่อน ( sudo apt-get purge virtualbox-4.0 virtualbox-ose)
Lekensteyn

2

ฉันมีปัญหาเดียวกัน ฉันมีlinux-headers-<version>-generic-paeการติดตั้ง linux-headers-generic-paeแต่ถูกกระแนะกระแหนที่ขาดหายไป หากคุณติดตั้งสิ่งที่ควรจะช่วย

โชคดี!


1

ติดตั้งสร้างข้อมูลสำคัญ

apt-get install build-essentials 

และติดตั้งlinux-kernel-header

apt-get install linux-kernel-headers 

หรือ

apt-get install linux-kernel-*

ติดตั้งdkms

apt-get install dkms

ขออภัยสำหรับการเยื้องที่ไม่ถูกต้อง .. apt-get install build-Essential linux-kernel- * dkms
SH_Rohit

ไม่มีแพคเกจดังกล่าวเป็นมันbuild-essentials แพคเกจไม่อยู่ก็ตั้งชื่อที่เป็นรุ่นเคอร์เนล build-essentiallinux-kernel-*linux-headers-...-generic...
Lekensteyn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.