VirtualBox không bắt đầu sau khi nâng cấp kernel


15

Hôm qua tôi đã nhận được bản nâng cấp kernel và sau khi khởi động lại, VirtualBox đã ngừng hoạt động.

Đây là thông tin hệ thống của tôi (sau khi nâng cấp kernel):

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

Tôi đã cài đặt VirtualBox từ lâu với

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

được sử dụng hàng ngày và không bao giờ gặp vấn đề với cập nhật kernel. Lỗi tôi nhận được bây giờ là

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 '

Tôi tìm thấy một bài đăng diễn đàn với thông báo lỗi này ở đây từ ba ngày trước, thật không may mà không giải quyết. Do đó, tôi đã cố gắng loại bỏ các bộ đệm VirtualBox khỏi repo Ubuntu và cài đặt bản 5.2 mới nhất bằng quy trình này . Tuy nhiên, ngay cả sau khi khởi động lại máy, lỗi vẫn còn.

Tôi có thể làm gì trong trường hợp này?


Điều này xảy ra với các module khác nữa (ví dụ bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937answers.launchpad.net/ubuntu/+question/664826 )
ricab

2
Một cách giải quyết hiện tại là tải kernel trước đó (4.4.0-112) trong grub.
ricab

Đối với những người thắc mắc làm thế nào để thực hiện đề xuất của @ricab: chỉ cần giữ shifttrong khi khởi động, chọn "Tùy chọn nâng cao cho Ubuntu" và chọn phiên bản kernel cũ hơn từ menu, như được giải thích ở đây . Tôi có thể xác nhận rằng phiên bản kernel trước của tôi (4.4.0-112) không có vấn đề được mô tả trong câu hỏi, vì vậy đó là một cách giải quyết khả thi cho đến khi giải pháp được đưa ra.
matpen

Trong 16.04, đó là Escchìa khóa.
D.Bugger

@ D.Bugger vào ngày 16.04 của tôi shiftkhông hoạt động. Đây không phải là trường hợp của tôi, nhưng tôi đã đọc được một số người chỉ làm việc với "ca phải" hoặc "ca trái".
matpen

Câu trả lời:


9

Tôi đã phải đối mặt với cùng một vấn đề. Sau khi nâng cấp kernel, phiên bản gcc của tôi hiển thị là 5.4.1. Việc hạ phiên bản này xuống 5.4.0 đã giúp tôi có retpoline cho mô-đun hạt nhân vboxdrv.

Các bước sau từ liên kết này đã giúp tôi giải quyết vấn đề của mình:

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

Sau các bước này, gcc --version sẽ là (Ubuntu 5.4.0-6ubfox1 ~ 16.04.9) 5.4.0 20160609

Sau đó lọc tất cả các tiêu đề linux mới (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

Một lần nữa cài đặt chúng

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

Sau đó cài đặt lại hộp ảo, lần này tôi đã cài đặt hộp ảo mới nhất 5.2, nhưng phiên bản 5.0 của hộp ảo mặc định cũng sẽ hoạt động tốt.

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

Và, chúng tôi có hỗ trợ retpoline trong mô-đun mới nhất

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)

Công việc tuyệt vời đã giúp tôi sau 6 tháng không có quyền truy cập vào máy móc của mình
George Udosen

TÔI MUỐN CHO BẠN TẤT CẢ NHỮNG ĐIỂM TRÊN THẾ GIỚI !!!!! :-) Nhưng tôi chỉ có thể nâng cấp bạn một lần không may.
choàng

4

Vấn đề liên quan được liệt kê trong nhận xét của @ricab đã được bắt nguồn từ một vấn đề với kernel mới yêu cầu một mức gcc phiên bản nhất định để biên dịch thành công các mô-đun hạt nhân.

Trên hệ thống của tôi, bản cập nhật gcc đã bị đẩy ra SAU bản cập nhật kernel, khiến cho việc biên dịch lại không thành công.

Khi nguyên nhân gốc được phát hiện, tôi có thể sửa hệ thống bằng cách hủy cài đặt và cài đặt lại kernel mới. Điều đó đã sửa các trình điều khiển đồ họa của tôi, nhưng tôi đã sudo /sbin/vboxconfigphải sửa lỗi hộp ảo sau khi khởi động vào kernel mới.

Hệ thống của tôi là 14.04 vì vậy tôi không thể tư vấn cho bạn về phiên bản gcc phù hợp cho hệ thống 16.04 của bạn, nhưng điều này được thảo luận tại https://bugs.launchpad.net/ubfox/+source/xorg/+orms/1750937


Cảm ơn vi đương link. Thật không may, nó dường như không hoạt động trong trường hợp của tôi cho Xenail (và tôi không đơn độc ). Tôi đã không nhận được bản nâng cấp gcc gần đây, nhưng tôi đã sẵn sàng gcc 5.4.1và thậm chí đã thử với gcc 7.2.0.
matpen


@jfs đúng, tuy nhiên tôi cần ppa gcc nên tôi không thể kiểm tra ngay bây giờ.
matpen

-1

Tôi cũng đã có vấn đề này gần đây và đăng một câu hỏi ở đây về nó. Tôi đã làm một số đào và đây thực sự là một vấn đề được biết đến.

Báo cáo lỗi là trong liên kết của tôi.

Virtualbox đã đột ngột ngừng hoạt động

Tôi nghĩ rằng sự đồng thuận chung là khởi động vào kernel 4.4 cho đến khi vấn đề được khắc phục. (Đó chắc chắn là giải pháp dễ nhất đối với tôi.)


1
Nếu câu trả lời của bạn về cơ bản là giới thiệu cho một câu hỏi khác, tốt hơn là gắn cờ câu hỏi này là một bản sao của câu hỏi khác sau khi bạn kiếm được 15 danh tiếng . Nếu bạn có tiếng tăm đừng quên bỏ phiếu cho (các) câu trả lời mà bạn thấy hữu ích!
David Foerster

Hiểu. Sẽ làm.
hatterman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.