После обновления Virtual Box отсутствуют источники ядра

Я обновил VirtualBox с 4.1 до 4.2

всякий раз, когда я хочу загрузить VDI Win XP, это дает мне следующую ошибку:

Драйвер ядра не установлен (rc = 1908)

Драйвер ядра VirtualBox Linux (vboxdrv) либо не загружен, либо существует проблема с разрешением /dev/vboxdrv. Переустановите модуль ядра, выполнив

/etc/init.d/vboxdrv setup

с правами root. Если он доступен в вашем дистрибутиве, вы должны сначала установить пакет DKMS. Этот пакет отслеживает изменения ядра Linux и, при необходимости, перекомпилирует модуль ядра vboxdrv.

Я выполнил предложенный шаг для переустановки модуля ядра, а файл журнала следующий:

Makefile:181: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again.  Stop.
Makefile:181: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again.  Stop.
Makefile:181: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again.  Stop.

Я все еще не могу повторно запустить мой виртуальный файл vdi для виртуальных XP.

У кого-нибудь есть ключ?

1
задан 8 June 2016 в 18:31

1 ответ

То же самое может произойти в VirtualBox 5. Скрипт vboxdrv теперь называется vboxadd (я думаю), и логика такова:

KERN_VER=`uname -r`
KERN_DIR="/lib/modules/$KERN_VER/build"
if [ -d "$KERN_DIR" ]; then
    KERN_REL=`make -sC $KERN_DIR --no-print-directory kernelrelease 2>/dev/null || true`
    if [ -z "$KERN_REL" -o "x$KERN_REL" = "x$KERN_VER" ]; then
        return 0
    fi
fi

Так что в основном вам нужно убедиться что вы установили VBoxGuestAdditions и источники ядра существуют в /lib/modules/$(uname -r)/build.

Вот простой тест:

$ sudo sh -x /opt/VBoxGuestAdditions-5.0.16/init/vboxadd setup 2>&1 | grep KERN
+ KERN_VER=2.6.32-573.18.1.el6.x86_64
+ KERN_DIR=/lib/modules/2.6.32-573.18.1.el6.x86_64/build

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

[ f3]

Затем убедитесь, что /lib/modules/$(uname -r)/build указывает на /usr/src/kernels/$(uname -r).

И дважды проверьте, соответствуют ли эти две команды:

$ sudo make -sC /usr/src/kernels/$(uname -r) kernelrelease
2.6.32-642.1.1.el6.x86_64
$ uname -r
2.6.32-642.1.1.el6.x86_64
0
ответ дан 25 May 2018 в 04:18

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

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