커널 업그레이드 후 VirtualBox가 시작되지 않음


15

어제 커널 업그레이드를 받았으며 재부팅 후 VirtualBox가 작동을 멈췄습니다.

다음은 내 시스템 정보입니다 (커널 업그레이드 후).

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 '

이 오류 메시지 포럼 게시물을 발견 여기 불행하게도 해상도 않고, 3 일전부터. 따라서 우분투 저장소에서 VirtualBox 패키지를 제거 하고이 절차를 사용하여 최신 5.2를 설치하려고했습니다 . 그러나 머신을 재부팅 한 후에도 오류는 유지됩니다.

이 경우 어떻게해야합니까?



2
현재 해결 방법은 grub에서 이전 커널 (4.4.0-112)을로드하는 것입니다.
ricab

@ricab의 제안을 수행하는 방법을 궁금해하는 사람들을 위해 shift부팅하는 동안 간단히 잡고 "Ubuntu의 고급 옵션"을 선택하고 여기에 설명 된대로 메뉴에서 이전 커널 버전을 선택 하십시오 . 이전 커널 버전 (4.4.0-112)에 질문에 설명 된 문제가 없음을 확인할 수 있으므로 솔루션이 출시 될 때까지 실행 가능한 해결 방법입니다.
matpen

16.04에서는 이것이 Esc핵심입니다.
D.Bugger

16.04의 @ D.Bugger shift가 작동합니다. 내 경우는 아니지만 "오른쪽 교대"또는 "왼쪽 교대"에서만 작동하도록하는 사람들을 읽었습니다.
matpen

답변:


9

나는 같은 문제에 직면했다. 커널 업그레이드 후 gcc 버전은 5.4.1로 표시되었습니다. 이 버전을 5.4.0으로 다운 그레이드하면 vboxdrv 커널 모듈에 대한 retpoline을 가질 수있었습니다.

링크의 다음 단계는 문제를 해결하는 데 도움 이 되었습니다.

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 여야합니다.

그런 다음 모든 새 Linux 헤더를 제거하십시오 (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

그런 다음 virtualbox를 다시 설치하고 이번에는 최신 virtualbox-5.2를 설치했지만 기본 5.0 버전의 virtualbox도 정상적으로 작동합니다.

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

그리고 우리는 최신 모듈에서 retpoline을 지원합니다

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 개월 후 탁월한 작업이 도움이되었습니다.
George Udosen

나는 당신에게 세계의 모든 포인트를주고 싶습니다 !!!!! :-) 그러나 불행히도 한 번만 당신을지지 할 수 있습니다.
shawty

4

@ricab의 의견에 나열된 관련 문제는 커널 모듈을 성공적으로 컴파일하기 위해 특정 버전의 gcc가 필요한 새 커널의 문제로 추적되었습니다.

내 시스템에서 커널 업데이트 후 gcc 업데이트가 푸시되어 재 컴파일이 실패했습니다.

근본 원인이 발견되면 새 커널을 설치 해제하고 다시 설치하여 시스템을 수정할 수있었습니다. 그래픽 드라이버 sudo /sbin/vboxconfig가 수정 되었지만 새 커널로 부팅 한 후 virtualbox를 수정 해야했습니다 .

내 시스템은 14.04이므로 16.04 시스템에 적합한 gcc 버전에 대해 조언 할 수는 없지만 https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937 에서 설명합니다.


링크 주셔서 감사합니다. 불행히도 Xenail의 경우에는 작동하지 않는 것 같습니다 (그리고 나는 혼자가 아닙니다 ). 최근에 gcc 업그레이드를받지 못했지만 이미 사용 gcc 5.4.1중이며로 시도했습니다 gcc 7.2.0.
matpen


@ jfs, ppa gcc가 필요하므로 지금 테스트 할 수 없습니다.
matpen

-1

나는 또한 최근 에이 문제가 있었고 그것에 대해 질문을 게시했습니다. 파고 들었는데 실제로 알려진 문제입니다.

버그 보고서는 내 링크에 있습니다.

Virtualbox가 갑자기 작동을 멈췄습니다

일반적인 문제는 문제가 해결 될 때까지 4.4 커널로 부팅하는 것입니다. (확실히 가장 쉬운 솔루션입니다.)


1
당신의 대답은 본질적으로 다른 질문에 대한 추천 있다면, 그것은 더 나은 것 플래그 는 일단 다른 중복으로이 질문에 15 명성을 얻었다 . 평판이 좋으면 유용한 답변에 투표하는 것을 잊지 마십시오!
David Foerster

이해했다. 할 것이다.
hatterman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.