Я использую Fedora 25 в качестве гостя в VirtualBox 5.1.14 на хосте Windows 10. Я установил xorg-x11-server-Xorg и гостевые дополнения VBox (используя ISO, предоставленный самим VirtualBox). Гостевые дополнения установились нормально, после принудительной установки правильных версий заголовков ядра с помощью dnf install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
. В журнале установки VBGA нет ошибок. dmesg показывает, что vboxvideo загрузилось, systemctl показывает, что vboxadd-сервис запущен, vboxadd-x11 активен / завершен. 3D-ускорение включено в настройках ВМ.
Однако когда я пытаюсь запустить X, я получаю (EE) Failed to load module "vboxvideo" (module does not exist, 0)
. Я перезагружался несколько раз, я переустанавливал VBGA и X несколько раз, он просто отказывался работать. Много, много, много поисков выявили много случаев этой проблемы, но большинство, кажется, вращаются вокруг либо: а) установки VBGA из пакета вместо включенного ISO (но я использовал ISO), б) VBGA не удалось установить правильно ( но он установился нормально, когда у меня были правильные заголовки, и он, кажется, работает), или c) плохой /etc/X11/xorg.conf (который они рекомендуют удалить, но у меня его нет для начала). Остальные предназначены для гораздо более старых версий VBox, чем я использую, и были исправлены с помощью простого обновления VBox.
Почему X не может найти драйвер vboxvideo и как его исправить?
источник
virtualbox-guest-utils
пакет, но получаю ту же ошибку (не могу найти vboxvideo) при запуске X. Я также заметил, что файл,/usr/lib/xorg/modules/drivers/vboxvideo_drv.so
кажется, отсутствует, хотя/usr/lib/xorg/modules/dri/vboxvideo_dri.so
присутствует.Ответы:
Я создал учетную запись только потому, что у меня были те же проблемы, и я выяснил некоторые вещи по пути, которые могут помочь другим.
Итак, для начала я использую виртуальную машину CentOS 7 в VirtualBox 4.xx, и видеодрайвер распознается с почти полностью работающими гостевыми дополнениями (автоматическое изменение размера все еще не работает, но я пока могу с этим справиться).
Получение возможностей видео в виртуальной машине CentOS 7 (может быть изменено и для других дистрибутивов Linux):
1. Загрузите и установите совместимую версию VirtualBox Guest Additions
A. Загрузите версию, новее или сделанную для установленной в данный момент программы-хоста VirtualBox
Поиск в хранилище VirtualBox: https://download.virtualbox.org/virtualbox/
После выбора папки найдите файл «VBoxGuestAdditions x.xx.iso» и загрузите его.
Б. Установите гостевые дополнения
Запустите виртуальную машину и смонтируйте загруженный файл .iso как устройство CD / DVD на панели «Устройства виртуальной машины».
Есть несколько предварительных условий для установки гостевых дополнений, которые доступны через собственную программу-репозиторий ОС.
Для Linux на основе RHEL используйте следующее с "yum":
Обязательно наберите «yes» для команд установки или используйте флаг «-y»
C. Установите гостевые дополнения
Откройте терминал и используйте команду «cd», чтобы перейти к корню папки CD / DVD.
Запустите следующую команду, чтобы запустить установщик:
Если сборка основного модуля ядра Guest Additions не удалась, убедитесь, что все необходимые компоненты установлены правильно. В противном случае переустановите их и попробуйте снова запустить установщик.
2. Получение, компиляция и установка драйвера vboxvideo
А. Скачивание исходных файлов для компиляции
Файл по ссылке ниже представляет собой сжатый архив исходных файлов драйвера "vboxvideo":
Б. Компиляция и установка драйвера "vboxvideo"
Распакуйте загруженные файлы и перейдите в терминал «xf86-video-vbox -...».
Запустите следующее в терминале:
Эти команды установят два файла "vboxvideo_drv.so" и "vboxvideo_drv.la" в каталог вашего модуля Xorg. Примечание. Модуль ядра "vboxvideo.ko" устанавливается вместе с гостевыми дополнениями и не требует настройки для этого.
3. Настройка конфигурации X-сервера
А. Создание / загрузка файла Xorg.conf
VirtualBox Guest Additions настроен для создания своего собственного файла Xorg.conf в конце установки. Этот процесс глючит в некоторых версиях. Ссылка на рабочий файл Xorg.conf приведена ниже.
Б. Вставка файла " Xorg.conf " для использования
После загрузки или копирования скопируйте файл в папку X11.
C. Процедуры закрытия
Перезапустите виртуальную машину из гостевой ОС и дайте ей полностью загрузиться. Теперь должно быть видео и другие гостевые возможности.
Чтобы убедиться в этом, войдите в ОС и откройте меню «Настройки» в разделе «Дисплеи».
На этикетке монитора должно отображаться «VBX», а нажатие на этикетку позволит настроить разрешение экрана.
Дополнительные замечания:
I. «Черный / замороженный экран при загрузке»
Если процедура загрузки зависает после завершения руководства, переключитесь на другое окно терминала, нажав одновременно клавиши «Alt» и «Fx», где x - это число от 2 до 6 (т. Е. «Alt-F2»).
Это откроет логин пользователя через интерфейс CLI.
Войдите в терминал и используйте следующую команду для проверки журнала « Xorg »:
Посмотрите на любые записи, касающиеся устройства " vboxvideo ".
- По любым вопросам «Не найдено»:
Убедитесь, что файл «vboxvideo_drv.so», скомпилированный на шаге 2b, находится в правильной папке.
- При возникновении проблем с «Несовместимой версией»:
Убедитесь, что правильный файл "vboxvideo_drv.so" скомпилирован на шаге 2b, поскольку он должен быть совместим с последней версией X-сервера, доступной в CentOS 7. (1.19.3 - Ver (23))
Текущая версия X-сервера находится с помощью команды:
- По любым вопросам, связанным с неправильным синтаксисом в « Xorg.conf »:
Убедитесь, что файл « Xorg.conf » на шаге 3A совпадает с файлом в папке « / etc / X11 / » гостевой ОС.
II. «Обоснование процесса»
Эти файлы драйверов были доступны из репозитория OpenIndiana для версии с открытым исходным кодом их собственной ОС на базе Solaris, которая все еще использовалась в Linux на основе RHEL. Включены некоторые ссылки и дальнейшая поддержка.
источник
Если вы работаете на сервере Xorg 1.19. *, То либо гостевые дополнения VBox 5.1.14 не поддерживают Xorg 1.19, либо он считает, что vboxvideo * .so не требуется в Xorg 1.19. *. Вот что я нашел ...
В 5.1.14 ISO были созданы /opt/VBoxGuestAdditions-5.1.14/lib/VBoxGuestAdditions, содержащие множество файлов vboxvideo_drv _ *. So (где '*' - это двух- или трехзначное число). Также есть ссылки, указывающие на этот каталог из / lib / VBoxGuestAdditions, / lib64 / VBoxGuestAdditions, / usr / lib / VBoxGuestAdditions и / usr / lib64 / VBoxGuestAdditions. Существует скрипт /opt/VBoxGuestAdditions-5.1.14/lib/VBoxGuestAdditions/vobxadd-x11, который подходит только для версии Xorg 1.18. *, А файл vboxvideo_drv с наибольшим числом - vboxvideo_drv_118.so.
К вашему сведению, у меня Xorg server 1.19.3, и он выходит из строя так же, как и система OP.
22 июля, 2017: Я протестировал использование vboxvideo_drv_118.so с сервером Xorg 1.19.3. Он сообщил о загрузке vboxvideo, затем завершился ошибкой с «(EE) vboxvideo: основная версия ABI модуля (20) не соответствует версии сервера (23)» и выгрузил vboxvideo. Поэтому VirtualBox 5.1.14 определенно не предоставляет vboxvideo * .so, который совместим с Xorg 1.19.
Я также нашел https://bugs.archlinux.org/task/52704, в котором говорится о том, что fbdev должен быть запасным вариантом, но недавно был сломан патчами 3 и 4.
Может кто-нибудь с последней версией VBox проверить свой скрипт vboxadd-x11, пожалуйста?
источник