VirtualBox ไม่โหลดหลังจากการอัพเกรด 12.04


33

หลังจากอัปเกรดจาก 11.10 เป็น 12.04 กล่องเสมือนหยุดทำงาน

ฉันเรียกใช้สิ่งต่อไปนี้เพื่อพยายามแก้ไข:

sudo aptitude update
sudo aptitude install dkms
sudo /etc/init.d/vboxdrv setup

แต่เมื่อฉันใช้คำสั่งสุดท้ายที่ฉันได้รับ:

bash: /etc/init.d/vboxdrv: No such file or directory

เมื่อฉันลอง

sudo /etc/init.d/virtualbox start

ฉันเข้าใจ:

 * Starting VirtualBox kernel modules
 * No suitable module for running kernel found

ฉันยังลอง:

sudo dkms install virtualbox/4.1.2

และได้รับ:

Error! Could not find module source directory.
Directory: /usr/src/virtualbox-4.1.2 does not exist.

ฉันได้ลองติดตั้งส่วนหัว Linux:

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

แต่พวกเขาถูกติดตั้งแล้ว

จากสิ่งที่ฉันได้อ่านการติดตั้งใหม่อาจไม่สามารถแก้ปัญหาได้ มีวิธีที่ฉันสามารถแก้ไขกล่องเสมือนจริงหรือไม่?


ขาดชื่อเสียง 10 ข้อในการตอบคำถาม ... แต่ชวเลขคือ: ´รับ - ติดตั้ง - ติดตั้ง virtualbox-dkms´ - หนึ่งต้องติดตั้ง build-essential และ linux-headers ก่อนหน้านี้
Martin Zeitler

คำตอบ:


36

ฉันมีปัญหาที่คล้ายกัน นี่คือสิ่งที่ทำงานให้ฉัน:

อาจจำเป็นถ้าคุณได้รับแหล่งเคอร์เนลไม่พบประเภทของข้อผิดพลาด:

sudo apt-get install build-essential linux-headers-`uname -r`

จากนั้นกำหนดค่าแพคเกจที่เกี่ยวข้องใหม่เพื่อนำมาสร้างใหม่

sudo dpkg-reconfigure virtualbox-dkms 
sudo dpkg-reconfigure virtualbox

ที่ทำงานสำหรับฉัน (กับ modprobe เช่นเดียวกับคำตอบของ GTO69)
Matthieu

1
apt-get install build-essential linux-headers`uname -r`อาจจำเป็นต้องใช้เป็นบันทึก
Mochan

1
ฉันได้รับเมื่อฉันพยายามsudo dpkg-reconfigure virtualbox-dkms dpkg-query: package 'virtualbox-dkms' is not installed and no information is available sudo dpkg-reconfigure virtualbox-dkmsฉันไม่มีข้อผิดพลาดหลังจากติดตั้งตู้เสมือน ...
Benjamin Crouzier

11

ฉันสิ้นสุดการถอนการติดตั้งและติดตั้ง Virtualbox ใหม่โดยใช้ apt-get มันเห็นว่ามีชิ้นส่วนเคอร์เนลหายไปและติดตั้งพวกเขา

sudo apt-get remove virtualbox
sudo apt-get install virtualbox

1
โปรดทราบว่า "sudo apt-get install virtualbox --reinstall" ไม่เริ่มกระบวนการสร้างโมดูล
Ben Simpson

8

สิ่งนี้ใช้ได้สำหรับฉันด้วย:

sudo apt-get remove virtualbox
sudo apt-get install virtualbox

อย่างไรก็ตามฉันต้องเพิ่ม:

sudo modprobe vboxdrv

3

คำตอบนี้ขึ้นอยู่กับคำตอบของ @ curtis ซึ่งเห็นได้ชัดว่าเป็นรุ่นเฉพาะของคำตอบ

คุณใช้รุ่นที่ไม่ถูกต้องในการสร้าง dkms ลองสิ่งนี้:

sudo dkms install virtualbox/4.1.12

ดูเหมือนว่าจะได้ผลสำหรับฉัน นี่คือหลังจากที่คุณติดตั้งแพคเกจ virtualbox-dkms แน่นอน

รุ่นสามารถเปลี่ยนแปลงได้ (ในที่กำหนดตัวหนาในใบเสนอราคา)

ดังนั้นลอง:

ls -d /usr/src/virtualbox*

ซึ่งจะให้สิ่งที่ชอบ

/usr/src/virtualbox-version

ตอนนี้ใช้เวอร์ชันและใช้ในคำสั่งด้านบนเช่น

sudo dkms install virtualbox/version

หากไม่ได้ให้คุณ

โมดูล virtualbox / versionติดตั้งไว้แล้วในเคอร์เนลkernelVersion -generic / architecture

เรียกใช้คำสั่งต่อไปนี้หลังจากนั้น (นำมาจากคำตอบอื่น ๆ ในโพสต์)

และถ้าจำเป็นให้โหลดโมดูล sudo modprobe vboxdrv

หาก DKMS แสดงข้อผิดพลาดที่เคอร์เนลหายไปให้ติดตั้งเคอร์เนลจากนั้นสร้าง / ติดตั้งกล่องเสมือนใหม่

แก้ไข : เห็นได้ชัดว่ามีอยู่ใน 12.10 ด้วย


1

คุณใช้รุ่นที่ไม่ถูกต้องในการสร้าง dkms ลองสิ่งนี้:

sudo dkms install virtualbox/4.1.12

ดูเหมือนว่าจะได้ผลสำหรับฉัน นี่คือหลังจากที่คุณติดตั้งแพคเกจ virtualbox-dkms แน่นอน


0

ฉันมีปัญหาเดียวกันและใน Logfile

DKMS make.log สำหรับ virtualbox-4.1.12 สำหรับเคอร์เนล 3.8.0-31-generic (x86_64) Mo 7 ต.ค. 14:43:01 CEST 2013 ทำ: Gehe ใน Verzeichnis '/usr/src/linux-headers-3.8 0-31-generic 'LD /var/lib/dkms/virtualbox/4.1.12/build/built-in.o LD /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/built-in.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/linux/SUPDrv-linux.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/SUPDrv .o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/SUPDrvSem.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/alloc -r0drv.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/initterm-r0drv.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build /vboxdrv/r0drv/memobj-r0drv.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/mpnotification-r0drvo CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/powernotification-r0drv.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build r0drv / linux / assert-r0drv-linux.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/linux/alloc-r0drv-linux.o CC [M] / var lib / dkms / virtualbox / 4.1.12 / build / vboxdrv / r0drv / linux / initterm-r0drv-linux.o CC [M] /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/ruxdr memobj-r0drv-linux.o /var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/linux/memobj-r0drv-linux.c: ใน Funktion » rtR0MemObjNativeMapUser «: var / libs / dvms / เสมือน /4.1.12/build/vboxdrv/r0drv/linux/memobj-r0drv-linux.c:1451:38: Fehler: » VM_RESERVED « nicht deklariert (erste Benutzung ใน Dieer Funktion) /var/lib/dkms/virtual/4.1 12 / build / vboxdrv / r0drv / linux / memobj-r0drv-linux.c: 1451: 38: รายละเอียดเพิ่มเติม:jeder nicht deklarierte Bezeichner wird nur einmal für jede Funktion, ใน der er vorkommt, gemeldet make [2]:* [/var/lib/dkms/virtualbox/4.1.12/build/vboxdrv/r0drv/linux/memobj-r0drv-linux.o] Fehler 1 ทำ [1]: [/var/lib/dkms/virtualbox/4.1.12/build/vboxdrv] Fehler 2 ทำ: * * [ โมดูล /var/lib/dkms/virtualbox/4.1.12/build] Fehler 2 ทำ: Verlasse Verzeichnis '/ usr /src/linux-headers-3.8.0-31-generic'

ฉันจะทำอย่างไร

3.8.0-31 ทั่วไป

micha @ Aspire-V3-771: ~ $ sudo dpkg- กำหนดค่า virtualbox-dkms [sudo] รหัสผ่านสำหรับ micha:

-------- ถอนการติดตั้งเริ่มต้น -------- โมดูล: virtualbox เวอร์ชัน: 4.1.12

เคอร์เนล: 3.5.0-18-generic (x86_64)

สถานะ: ก่อนถอนการติดตั้งรุ่นของโมดูลนี้คือ ACTIVE บนเคอร์เนลนี้

vboxdrv.ko: - การถอนการติดตั้ง - การลบจาก: /lib/modules/3.5.0-18-generic/updates/dkms/ - โมดูลดั้งเดิม - ไม่พบโมดูลดั้งเดิมสำหรับโมดูลนี้ในเคอร์เนลนี้ - ใช้คำสั่ง dkms install เพื่อติดตั้งโมดูลรุ่นก่อนหน้าใด ๆ

vboxnetadp.ko: - การถอนการติดตั้ง - การลบจาก: /lib/modules/3.5.0-18-generic/updates/dkms/ - โมดูลดั้งเดิม - ไม่พบโมดูลดั้งเดิมสำหรับโมดูลนี้ในเคอร์เนลนี้ - ใช้คำสั่ง dkms install เพื่อติดตั้งโมดูลรุ่นก่อนหน้าใด ๆ

vboxnetflt.ko: - การถอนการติดตั้ง - การลบจาก: /lib/modules/3.5.0-18-generic/updates/dkms/ - โมดูลดั้งเดิม - ไม่พบโมดูลดั้งเดิมสำหรับเคอร์เนลนี้ - ใช้คำสั่ง dkms install เพื่อติดตั้งโมดูลรุ่นก่อนหน้าใด ๆ

vboxpci.ko: - การถอนการติดตั้ง - การลบจาก: /lib/modules/3.5.0-18-generic/updates/dkms/ - โมดูลดั้งเดิม - ไม่พบโมดูลดั้งเดิมสำหรับโมดูลนี้ในเคอร์เนลนี้ - ใช้คำสั่ง dkms install เพื่อติดตั้งโมดูลรุ่นก่อนหน้าใด ๆ

depmod ....

DKMS: ถอนการติดตั้งเสร็จสมบูรณ์


การลบเวอร์ชั่นของโมดูล: 4.1.12

สมบูรณ์จากต้นไม้ DKMS

เสร็จสิ้น กำลังโหลดไฟล์ virtualbox-4.1.12 ใหม่ DKMS ... สร้างเฉพาะ 3.8.0-31-generic สร้างโมดูลเริ่มต้นสำหรับข้อผิดพลาดทั่วไป 3.8.0-31-! สถานะการส่งคืนไม่ถูกต้องสำหรับการสร้างโมดูลบนเคอร์เนล: 3.8.0-31-generic (x86_64) ดู /var/lib/dkms/virtualbox/4.1.12/build/make.log สำหรับข้อมูลเพิ่มเติม * การหยุดโมดูลเคอร์เนล VirtualBox [ตกลง] * การเริ่มต้นโมดูลเคอร์เนล VirtualBox * ไม่มีโมดูลที่เหมาะสมสำหรับการเรียกใช้เคอร์เนลพบ [ล้มเหลว] invoke-rc.d: initscript virtualbox, การกระทำ "เริ่มต้น" ล้มเหลว ปาสเตอร์ @ Aspire V3-771-: ~ $


ฉันได้ติดตั้ง Virtualbox ตอนนี้จากvirtualbox.orgและตอนนี้มันกำลังทำงาน ... :)
lupopa
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.