Почему не удается установить VirtualBox на Ubuntu20.04

Я пытаюсь установить виртуальный бокс. Я установил его ранее, и он работал. Сегодня я попытался добавить еще одну виртуальную машину, и она начала жаловаться на проблемы с dkms, поэтому я попытался очистить и установить все со следующей ошибкой.

      $  sudo apt install virtualbox
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  dkms libgsoap-2.8.91 libqt5opengl5 libsdl1.2debian libvncserver1 virtualbox-dkms virtualbox-qt
Suggested packages:

Я не мог отправить свой вопрос, не пропустив какой-либо вывод

      Building initial module for 5.8.0-36-generic
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/virtualbox-dkms.0.crash'
Error! Bad return status for module build on kernel: 5.8.0-36-generic (x86_64)
Consult /var/lib/dkms/virtualbox/6.1.10/build/make.log for more information.
dpkg: error processing package virtualbox-dkms (--configure):
 installed virtualbox-dkms package post-installation script subprocess returned error exit status 10
dpkg: dependency problems prevent configuration of virtualbox:
 virtualbox depends on virtualbox-dkms (>= 6.1.10-dfsg-1~ubuntu1.20.04.1) | virtualbox-source (>= 6.1.10-dfsg-1~u
buntu1.20.04.1) | virtualbox-modules; however:
  Package virtualbox-dkms is not configured yet.
  Package virtualbox-source is not installed.
  Package virtualbox-modules is not installed.
  Package virtualbox-dkms which provides virtualbox-modules is not configured yet.

dpkg: error processing package virtualbox (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of virtualbox-qt:
 virtualbox-qt depends on virtualbox (= 6.1.10-dfsg-1~ubuntu1.20.04.1); however:
  Package virtualbox is not configured yet.

dpkg: error processing package virtualbox-qt (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates it's a follow-up error from a previous failure.
                                                                                                            No ap
port report written because the error message indicates it's a follow-up error from a previous failure.
                                                                                                       Processing
 triggers for desktop-file-utils (0.24-1ubuntu3) ...
Processing triggers for mime-support (3.64ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.1) ...
Processing triggers for systemd (245.4-4ubuntu3.3) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for shared-mime-info (1.15-1) ...
Errors were encountered while processing:
 virtualbox-dkms
 virtualbox
 virtualbox-qt
E: Sub-process /usr/bin/dpkg returned an error code (1)

ошибка dkms

$ cat /var/lib/dkms/virtualbox/6.1.10/build/make.log DKMS make.log для virtualbox-6.1.10 для ядра 5.8.0-36-generic (x86_64) Вт, 12 января, 12:40:32 GMT 2021 make: вход в каталог '/usr/src/linux-headers-5.8.0-36-generic' CC[M]/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux .o
CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrv.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvGip.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvSem.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvTracer.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPLibAll.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/alloc-r0drv.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/initterm-r0drv.o
CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/memobj-r0drv.o
CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/mpnotification-r0drv.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv /powernotification-r0drv.o CC[M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/linux/assert-r0drv-linux.o В файле, включенном из ./include/asm-generic/percpu.h:7, из ./arch/x86/include/asm/percpu.h:556, из ./arch/x86/include/asm/preempt.h:6, из ./include/linux/preempt.h : 78, из ./include/linux/spinlock.h:51, из /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/../SUPDrvInternal.h:79, из / var / lib /dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:32:/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c: Функция In 'supdrvOSChangeCR4': /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38: ошибка: 'cpu_tlbstate' не объявлен (первое использование в этой функции);вы имели в виду cpuhp_state? 760 | RTCCUINTREG uOld =this_cpu_read(cpu_tlbstate.cr4);| ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: примечание: в определении макроса 'pcpu_size_call_return '318 | typeof(переменная) pscr_ret;
| ^~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24: примечание: в раскрытии макроса 'this_cpu_read' 760 | RTCCUINTREG uOld =this_cpu_read(cpu_tlbstate.cr4);| ^~~~~~~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38: примечание: сообщается только каждый необъявленный идентификатор один раз для каждой функции появляется в 760 | RTCCUINTREG uOld =this_cpu_read(cpu_tlbstate.cr4);| ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: примечание: в определении макроса ' pcpu_size_call_return' 318 | typeof(переменная) pscr_ret;
| ^~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24: примечание: в раскрытии макроса 'this_cpu_read' 760 | RTCCUINTREG uOld =this_cpu_read(cpu_tlbstate.cr4);| ^ ~~~~~~~~~~~~ make [2]: *** [скрипты / Makefile.build:290:/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.o] Ошибка 1 make [2]: *** Ожидание незавершенных заданий .... make [1]: ***[scripts / Makefile.build:519: /var/lib/dkms/virtualbox/6.1 .10 / build / vboxdrv] Ошибка 2 make: ***[Makefile:1780: /var/lib/dkms/virtualbox/6.1.10/build] Ошибка 2 make: выход из каталога '/ usr / src / linux-headers-5.8.0-36-общий '

7 ответов

Была такая же проблема, но, наконец, исправили !!!

Полностью удалив Virtualbox и переустановив его.

Пытался понизить ядро, но у меня это не сработало

$ sudo apt-get purge "^ virtualbox -.*"

$sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean

Затем загрузите последнюю версию виртуального бокса по этой ссылке для ubuntu 20.04.

https://www.virtualbox.org/wiki/Linux_Downloads

Я пробовал много других решений, ни одно не помогло мне.

Попробуйте установить виртуальный бокс со страницы загрузки, чтобы убедиться, что это последняя версия виртуального бокса (6.1.16).
Если это все еще не удается , возможно, этот ответ может помочь

Была аналогичная проблема. Шаги, которые я выполнил:

  • Полностью удалил и очистил ранее неудавшиеся файлы виртуального бокса.

sudo apt-get purge "^virtualbox-.*"

sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean

wget https://download.virtualbox.org/virtualbox/7.0.6/VirtualBox-7.0.6-155176-Linux_amd64.run

  • Делаем файл исполняемым

chmod +x ./VirtualBox-7.0.6-155176-Linux_amd64.run

  • Запуск скрипта установки

sudo ./VirtualBox-7.0.6-155176-Linux_amd64.run

Примечание. Возможно, вам потребуется изменить номер версии для того, что

самое простое решение — установить libgsoap вручную, а затем попробовать установить VirtualBox, я сделал то же самое, у меня сработало

https://ubuntu.pkgs.org/20.04/ubuntu-universe-amd64/libgsoap-2.8.91_2.8.91-2_amd64.deb.html

выше ссылка на установку

Удаление версий ядра, таких как 5.8, и понижение до 5.4.0-60-generic решило проблему. После загрузки с ядром 5.4.0-60-generic я смог установить Virtualbox с помощью synaptic, и моя новая виртуальная машина заработала.

Да, удалением или понижением версии ядра проблема решена. Вы можете использовать mainline и grub-cusomizer.

grub-cusomizer: https://tipsonubuntu.com/2018/03/11/install-grub-customizer-ubuntu-18-04-lts/

основная линия: https://ubuntuhandbook.org/index.php/2020/08/mainline-install-latest-kernel-ubuntu-linux-mint/

Не рекомендуется устанавливать какое-либо программное обеспечение из Терминала, потому что вы всегда получите старую версию этого программного обеспечения. Следовательно, всегда лучше устанавливать и загружать программное обеспечение с их официального сайта.

В вашем случае лучше выйти из Терминала и попытаться установить виртуальный бокс с соответствующего официального сайта:

https://www.virtualbox.org/wiki/Linux_Downloads

Если и это не сработает, попробуйте удалить все зависимости виртуального бокса из Synaptic Package Manager и снова установить виртуальный бокс.

Другие вопросы по тегам