Как я могу правильно настроить VirtualBox в 17.04?

Я устанавливал VirtualBox с основного сайта с указанным пакетом .dpkg, и во время установки у меня получилась ошибка:

dpkg: dependency problems prevent configuration of virtualbox-5.1: virtualbox-5.1 depends on libqt5x11extras5 (>= 5.6.0); however: Package libqt5x11extras5 is not installed. virtualbox-5.1 depends on libsdl1.2debian (>= 1.2.11); however: Package libsdl1.2debian is not installed. dpkg: error processing package virtualbox-5.1 (--install): dependency problems - leaving unconfigured Processing triggers for systemd (232-21ubuntu5) ... Processing triggers for ureadahead (0.100.0-19) ... ureadahead will be reprofiled on next reboot Processing triggers for bamfdaemon (0.5.3+17.04.20170406-0ubuntu1) ... Rebuilding /usr/share/applications/bamf-2.index... Processing triggers for gnome-menus (3.13.3-6ubuntu5) ... Processing triggers for desktop-file-utils (0.23-1ubuntu2) ... Processing triggers for mime-support (3.60ubuntu1) ... Processing triggers for hicolor-icon-theme (0.15-1) ... Processing triggers for shared-mime-info (1.8-1) ... Errors were encountered while processing: virtualbox-5.1

В кулак подумала, что проблема связана с неудовлетворенными зависимостями и запущена :

sudo apt-get install -f

Но затем я получил следующее сообщение об ошибке:

Adding group `vboxusers' (GID 132) ... Done. Created symlink /etc/systemd/system/multi-user.target.wants/vboxdrv.service → /lib/systemd/system/vboxdrv.service. Created symlink /etc/systemd/system/multi-user.target.wants/vboxballoonctrl-service.service → /lib/systemd/system/vboxballoonctrl-service.service. Created symlink /etc/systemd/system/multi-user.target.wants/vboxautostart-service.service → /lib/systemd/system/vboxautostart-service.service. Created symlink /etc/systemd/system/multi-user.target.wants/vboxweb-service.service → /lib/systemd/system/vboxweb-service.service. vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why. There were problems setting up VirtualBox. To re-start the set-up process, run /sbin/vboxconfig as root.

После этого я выполнил предложенную команду и получил точно такую ​​же ошибку.

Как было предложено для @George, я побежал dmesg -kHd --time-format ctime | tail -20, результирующие строки:

[dom ago 13 13:59:07 2017 < 0,005021>] wlo1: authenticate with ea:de:27:93:b1:50 [dom ago 13 13:59:07 2017 < 0,005558>] wlo1: send auth to ea:de:27:93:b1:50 (try 1/3) [dom ago 13 13:59:07 2017 < 0,003337>] wlo1: authenticated [dom ago 13 13:59:07 2017 < 0,008390>] wlo1: associate with ea:de:27:93:b1:50 (try 1/3) [dom ago 13 13:59:07 2017 < 0,006367>] wlo1: RX AssocResp from ea:de:27:93:b1:50 (capab=0x421 status=0 aid=1) [dom ago 13 13:59:07 2017 < 0,001071>] wlo1: associated [dom ago 13 14:01:06 2017 < 119,551821>] wlo1: disconnect from AP ea:de:27:93:b1:50 for new auth to c6:6e:1f:08:83:ce [dom ago 13 14:01:06 2017 < 0,005411>] wlo1: authenticate with c6:6e:1f:08:83:ce [dom ago 13 14:01:06 2017 < 0,004158>] wlo1: send auth to c6:6e:1f:08:83:ce (try 1/3) [dom ago 13 14:01:06 2017 < 0,005006>] wlo1: authenticated [dom ago 13 14:01:06 2017 < 0,001436>] wlo1: associate with c6:6e:1f:08:83:ce (try 1/3) [dom ago 13 14:01:06 2017 < 0,003535>] wlo1: RX AssocResp from c6:6e:1f:08:83:ce (capab=0x421 status=0 aid=1) [dom ago 13 14:01:06 2017 < 0,000535>] wlo1: associated [dom ago 13 14:05:07 2017 < 240,406581>] wlo1: disconnect from AP c6:6e:1f:08:83:ce for new auth to c6:6e:1f:08:83:cf [dom ago 13 14:05:07 2017 < 0,014262>] wlo1: authenticate with c6:6e:1f:08:83:cf [dom ago 13 14:05:07 2017 < 0,006950>] wlo1: send auth to c6:6e:1f:08:83:cf (try 1/3) [dom ago 13 14:05:07 2017 < 0,002182>] wlo1: authenticated [dom ago 13 14:05:07 2017 < 0,005477>] wlo1: associate with c6:6e:1f:08:83:cf (try 1/3) [dom ago 13 14:05:07 2017 < 0,001717>] wlo1: RX AssocResp from c6:6e:1f:08:83:cf (capab=0x1 status=0 aid=1) [dom ago 13 14:05:07 2017 < 0,001518>] wlo1: associated

Что я могу сделать, чтобы исправить это?

0
задан 13 August 2017 в 20:09

2 ответа

Я смог решить проблему благодаря комментариям, и я делюсь этим решением в случае, когда somenone сталкивается с той же проблемой, что и я. Интерфейс UEFI между вашим оборудованием и программным обеспечением, который наиболее ответственен за загрузку вашей системы, имеет технологию Secure Boot, которая, в свою очередь, проверяет, подписан ли системный загрузчик с криптографическим ключом, разрешенным базой данных, содержащейся в прошивку. При адекватной проверке подписи в загрузчиках (загрузках) следующего ядра, ядре и, потенциально, пространстве пользователя, можно предотвратить выполнение неподписанного кода. Это помогает с безопасностью вашей системы и затрудняет доступ вредоносного программного обеспечения к вашей системе.

Текущая проблема, возникшая при установке, связана с отсутствием действительного ключа для некоторых модулей программного обеспечения VirtualBox. Если у вас есть эта проблема, есть несколько способов, с помощью которых вы можете справиться с ней, первая из них проста, а последняя немного напряжена:

Отключить SECURE BOOT, как указано Pilot6:

В большинстве случаев вы можете войти в настройки UEFI, используя меню grub. Нажмите кнопку ESC при загрузке, войдите в меню grub и выберите «Настройка системы». Безопасная загрузка должна быть в разделе «Безопасность» или «Загрузка» UEFI.

Вы можете напрямую попасть в UEFI, но это зависит от вашего оборудования. Прочтите руководство по работе с компьютером, чтобы узнать, как туда добраться. Это может быть ESC или F2 при загрузке или что-то еще.

Альтернативный способ - отключить Безопасную загрузку с помощью mokutil.

Поскольку Ubuntu kernel build 4.4.0-21.37 это можно исправить, запустив

sudo apt install mokutil sudo mokutil --disable-validation

Для этого потребуется создать пароль. Пароль должен содержать не менее 8 символов. После перезагрузки UEFI спросит, хотите ли вы изменить параметры безопасности. Выберите «Да».

Затем вам будет предложено ввести ранее созданный пароль. Некоторые прошивки UEFI запрашивают не полный пароль, а вводят некоторые символы, такие как 1-й, 3-й и т. Д. Будьте осторожны. Некоторые люди этого не понимают. Я не получил это с первой попытки: -)

Обновление: теперь этот конфиг ядра включен во всех поддерживаемых ядрах Ubuntu. Ubuntu 16.04, 15.10 и 14.04.

Отключить SECURE BOOT, как указано Pilot6:

Начиная с версии ядра 4.4.0-20, это было принудительно что Обновление: модули ядра не будут разрешены для запуска с включенной защищенной загрузкой.

Создать подписи openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/" Подписать модуль (vboxdrv для этот пример) sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv) Зарегистрируйте ключи для безопасной загрузки sudo mokutil --import MOK.der Поставьте пароль для последующего использования после перезагрузки Reboot и следуйте инструкциям для регистрации MOK (ключ владельца машины). Вот пример с картинками. Система перезагрузится еще раз. После перезагрузки вам также понадобится sudo modprobe vboxdrv загрузить модуль.

Пожалуйста, дайте мне знать, будет ли VirtualBox работать таким образом на Ubuntu 16.04 (на ядре 4.4.0-21 или выше, я считаю).

sign Подробная статья веб-сайта для Fedora и Ubuntu о внедрении модуля. (они работали над этим) ;-) И для безопасности, пожалуйста, рассмотрите комментарий @zwets ниже. Чтобы иметь все возможности сети и PCI, вы можете также подписать следующие модули: vboxnetflt, vboxnetadp и vboxpci. Спасибо @shasha_trn за комментарий ниже.

Дополнительный ресурс: я каждый раз создавал сценарий bash для своего собственного использования virtualbox-dkms и, таким образом, перезаписывал подписанные модули. Ознакомьтесь с моей статьей для Fedora .

1
ответ дан 18 July 2018 в 08:35

Я смог решить проблему благодаря комментариям, и я делюсь этим решением в случае, когда somenone сталкивается с той же проблемой, что и я. Интерфейс UEFI между вашим оборудованием и программным обеспечением, который наиболее ответственен за загрузку вашей системы, имеет технологию Secure Boot, которая, в свою очередь, проверяет, подписан ли системный загрузчик с криптографическим ключом, разрешенным базой данных, содержащейся в прошивку. При адекватной проверке подписи в загрузчиках (загрузках) следующего ядра, ядре и, потенциально, пространстве пользователя, можно предотвратить выполнение неподписанного кода. Это помогает с безопасностью вашей системы и затрудняет доступ вредоносного программного обеспечения к вашей системе.

Текущая проблема, возникшая при установке, связана с отсутствием действительного ключа для некоторых модулей программного обеспечения VirtualBox. Если у вас есть эта проблема, есть несколько способов, с помощью которых вы можете справиться с ней, первая из них проста, а последняя немного напряжена:

Отключить SECURE BOOT, как указано Pilot6:

В большинстве случаев вы можете войти в настройки UEFI, используя меню grub. Нажмите кнопку ESC при загрузке, войдите в меню grub и выберите «Настройка системы». Безопасная загрузка должна быть в разделе «Безопасность» или «Загрузка» UEFI.

Вы можете напрямую попасть в UEFI, но это зависит от вашего оборудования. Прочтите руководство по работе с компьютером, чтобы узнать, как туда добраться. Это может быть ESC или F2 при загрузке или что-то еще.

Альтернативный способ - отключить Безопасную загрузку с помощью mokutil.

Поскольку Ubuntu kernel build 4.4.0-21.37 это можно исправить, запустив

sudo apt install mokutil sudo mokutil --disable-validation

Для этого потребуется создать пароль. Пароль должен содержать не менее 8 символов. После перезагрузки UEFI спросит, хотите ли вы изменить параметры безопасности. Выберите «Да».

Затем вам будет предложено ввести ранее созданный пароль. Некоторые прошивки UEFI запрашивают не полный пароль, а вводят некоторые символы, такие как 1-й, 3-й и т. Д. Будьте осторожны. Некоторые люди этого не понимают. Я не получил это с первой попытки: -)

Обновление: теперь этот конфиг ядра включен во всех поддерживаемых ядрах Ubuntu. Ubuntu 16.04, 15.10 и 14.04.

Отключить SECURE BOOT, как указано Pilot6:

Начиная с версии ядра 4.4.0-20, это было принудительно что Обновление: модули ядра не будут разрешены для запуска с включенной защищенной загрузкой.

Создать подписи openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/" Подписать модуль (vboxdrv для этот пример) sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv) Зарегистрируйте ключи для безопасной загрузки sudo mokutil --import MOK.der Поставьте пароль для последующего использования после перезагрузки Reboot и следуйте инструкциям для регистрации MOK (ключ владельца машины). Вот пример с картинками. Система перезагрузится еще раз. После перезагрузки вам также понадобится sudo modprobe vboxdrv загрузить модуль.

Пожалуйста, дайте мне знать, будет ли VirtualBox работать таким образом на Ubuntu 16.04 (на ядре 4.4.0-21 или выше, я считаю).

sign Подробная статья веб-сайта для Fedora и Ubuntu о внедрении модуля. (они работали над этим) ;-) И для безопасности, пожалуйста, рассмотрите комментарий @zwets ниже. Чтобы иметь все возможности сети и PCI, вы можете также подписать следующие модули: vboxnetflt, vboxnetadp и vboxpci. Спасибо @shasha_trn за комментарий ниже.

Дополнительный ресурс: я каждый раз создавал сценарий bash для своего собственного использования virtualbox-dkms и, таким образом, перезаписывал подписанные модули. Ознакомьтесь с моей статьей для Fedora .

1
ответ дан 24 July 2018 в 19:07

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

Похожие вопросы: