Linux VBOX_NOT_FOUNDВысокая

Ошибка драйвера VirtualBox в Minikube на Linux: исправляем

Статья explains, почему Minikube на Linux не может использовать VirtualBox из-за отсутствия или некорректной установки драйвера ядра, и предоставляет проверенные способы решения — от переустановки DKMS до смены драйвера.

Обновлено 15 февраля 2026 г.
10-15 мин
Средняя
FixPedia Team
Применимо к:Minikube v1.30+VirtualBox 6.1/7.0Ubuntu 20.04/22.04/24.04Debian 11/12ядро Linux 5.4+

Что означает ошибка VirtualBox драйвера в Minikube

Ошибка, связанная с драйвером VirtualBox в Minikube, обычно проявляется при попытке запуска кластера командой minikube start --driver=virtualbox. Полный текст ошибки может варьироваться:

❌  Exiting due to DRV_NOT_FOUND: The virtualbox driver requires a working virtualbox installation.
   Please install virtualbox or use another driver.

Или более конкретно:

❌  Exiting due to DRV_NOT_AVAILABLE: The driver 'virtualbox' is not available on this system.
   Reason: failed to find the virtualbox driver: exec: "VBoxManage": executable file not found in $PATH

Эта ошибка означает, что Minikube не может найти или использовать исполняемый файл VBoxManage (утилита управления VirtualBox) или, что чаще, не может загрузить модуль ядра vboxdrv, который является основой для работы VirtualBox на Linux.

Причины возникновения

Ошибка возникает из-за проблем на уровне операционной системы, а не самого Minikube. Основные причины:

  1. Отсутствие пакета virtualbox-dkms. В дистрибутивах на основе Debian/Ubuntu этот пакет обязателен. Он содержит DKMS (Dynamic Kernel Module Support) скрипты, которые автоматически собирают модуль ядра vboxdrv под вашу текущую версию ядра Linux при каждой его установке или обновлении. Без него модуль отсутствует.
  2. Модуль ядра vboxdrv не загружен. Даже если пакет установлен, модуль может не быть загружен в текущее ядро. Это происходит автоматически при загрузке системы, но может сломаться после обновления ядра, если DKMS не сработал, или при ручной установке VirtualBox без DKMS.
  3. Недостаточно прав у пользователя. Для управления виртуальными машинами через VirtualBox пользователь должен состоять в группе vboxusers. Если пользователь не в этой группе, доступ к /dev/vboxdrv и другим устройствам будет запрещён.
  4. Конфликт версий ядра и DKMS. После крупного обновления ядра (например, с 5.15 на 6.2) собранный ранее модуль vboxdrv становится несовместимым. DKMS должен автоматически пересобрать его, но этот процесс может завершиться с ошибкой.
  5. VirtualBox установлен, но VBoxManage не в PATH. Установка из сторонних репозиториев или вручную может поместить бинарники в нестандартное место (например, /usr/local/bin), которое не входит в переменную окружения PATH пользователя.

Способ 1: Полная переустановка VirtualBox с DKMS (рекомендуемый)

Это самый надёжный способ, который решает большинство проблем, связанных с модулем ядра.

  1. Полностью удалите существующую установку VirtualBox (если она была):
    sudo apt-get purge virtualbox virtualbox-dkms
    sudo apt-get autoremove
    
  2. Установите VirtualBox и DKMS из официального репозитория (или из репозитория дистрибутива):
    sudo apt update
    sudo apt install -y virtualbox virtualbox-dkms
    

    Пакет virtualbox-dkms вызовет процесс сборки модуля через DKMS. Внимательно следите за выводом команды dpkg -i — там может быть сообщение об ошибке сборки.
  3. Проверьте, что модуль загружен:
    lsmod | grep vboxdrv
    

    Если команда ничего не выводит, загрузите модуль вручную:
    sudo modprobe vboxdrv
    
  4. Добавьте текущего пользователя в группу vboxusers:
    sudo usermod -aG vboxusers $USER
    

    Важно: Изменения вступят в силу только после выхода из системы и повторного входа (или перезагрузки). Просто открыть новый терминал недостаточно.
  5. Очистите состояние Minikube и запустите заново:
    minikube stop
    minikube delete
    minikube start --driver=virtualbox
    

Способ 2: Ручное управление модулем ядра (если DKMS не сработал)

Если после установки virtualbox-dkms модуль не появился (например, из-за отсутствия заголовков ядра linux-headers-$(uname -r)), нужно установить недостающие зависимости и пересобрать модуль вручную.

  1. Установите заголовки вашего текущего ядра:
    sudo apt install -y linux-headers-$(uname -r) build-essential dkms
    
  2. Пересоберите модуль DKMS вручную:
    sudo dkms autoinstall
    

    Или, если это не помогает, перейдите в директорию модуля и соберите явно:
    cd /usr/src/linux-headers-$(uname -r)/
    sudo make modules_prepare
    sudo dkms build -m virtualbox -v $(cat /usr/share/doc/virtualbox-dkms/VERSION) 2>/dev/null || true
    sudo dkms install -m virtualbox -v $(cat /usr/share/doc/virtualbox-dkms/VERSION)
    
  3. Повторите шаги 3-5 из Способ 1 (загрузка модуля, добавление в группу, перезапуск Minikube).

Способ 3: Использование альтернативного драйвера (быстрое решение)

Если вам не принципиально использовать именно VirtualBox (например, вы только начинаете работать с Kubernetes), проще сменить драйвер Minikube на docker или podman. Это обойдёт проблему с модулями ядра.

  1. Убедитесь, что Docker/Podman установлен и запущен:
    sudo systemctl status docker  # для Docker
    # или
    systemctl status podman       # для Podman
    
  2. Удалите текущий (сломанный) кластер Minikube:
    minikube delete
    
  3. Запустите Minikube с драйвером docker:
    minikube start --driver=docker
    

    Если хотите использовать Podman:
    minikube start --driver=podman
    

Примечание: Драйвер docker использует контейнеры вместо виртуальных машин, что делает его более легковесным и быстрым для разработки. Однако он требует работающего демона Docker/Podman и не изолирует кластер так же сильно, как VirtualBox.

Способ 4: Проверка и исправление прав доступа к устройству

Иногда проблема не в отсутствии модуля, а в правах на устройство /dev/vboxdrv.

  1. Проверьте права на устройство:
    ls -l /dev/vboxdrv
    

    Корректный вывод должен выглядеть примерно так:
    crw-rw---- 1 root vboxusers 10, 57 Feb 15 10:00 /dev/vboxdrv
    

    Обратите внимание на группу vboxusers.
  2. Если группа не vboxusers или права другие, исправьте:
    sudo chown root:vboxusers /dev/vboxdrv
    sudo chmod 660 /dev/vboxdrv
    
  3. Убедитесь, что ваш пользователь точно в группе vboxusers:
    groups $USER
    

    Если vboxusers нет в списке, вернитесь к шагу 4 в Способе 1.

Профилактика

Чтобы избежать повторения проблемы в будущем:

  • При обновлении ядра Linux всегда проверяйте статус DKMS модулей: sudo dkms status. После обновления ядра через apt upgrade система должна автоматически пересобрать модули VirtualBox. Если это не произошло, выполните sudo dkms autoinstall.
  • Устанавливайте VirtualBox только из официальных репозиториев вашего дистрибутива или с официального сайта VirtualBox (который также предоставляет .deb-пакет). Избегайте установки вручную из бинарных архивов без DKMS.
  • Регулярно обновляйте VirtualBox через менеджер пакетов (sudo apt upgrade). Новые версии часто содержат исправления совместимости с новыми ядрами.
  • Используйте драйвер docker по умолчанию для Minikube на Linux, если нет строгих требований к изоляции. Это избавит от проблем с модулями ядра и сделает workflow проще.

Часто задаваемые вопросы

Почему Minikube не находит драйвер VirtualBox после установки?
Можно ли использовать Minikube без VirtualBox на Linux?
Что делать, если после установки `virtualbox-dkms` ошибка остаётся?
Какую разницу между драйверами virtualbox и docker в Minikube?

Полезное

Проверьте состояние драйвера VirtualBox
Установите или переустановите DKMS и модуль
Загрузите модуль вручную и добавьте пользователя в группу
Перезапустите Minikube с указанием драйвера