Попытка правильно установить и настроить Xorg и драйверы nvidia в/на Open Indiana, виртуализированном с помощью bhyve на FreeBSD 14.1.

Вопрос или проблема

Я только что виртуализировал Open Indiana в bhyve (гипервизор FreeBSD), используя следующие параметры:

bhyve-win -S -c sockets=2,cores=2,threads=2 -m 4G -w -H -A \
-s 0,hostbridge \
-s 1,ahci-hd,/mnt/zroot2/zroot2/bhyve/img/Open-Indiana/efi/Minimal/openindiana-1.img \
-s 8:0,passthru,2/0/0 \
-s 8:1,passthru,2/0/1 \
-s 8:2,passthru,2/0/2 \
-s 8:3,passthru,2/0/3 \
-s 13,virtio-net,tap5 \
-s 29,fbuf,tcp=0.0.0.0:5905,w=1600,h=950,wait \
-s 31,lpc \
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI_CODE.fd \
vm0:5 < /dev/null & sleep 2 && vncviewer 0:5 &

Вы можете видеть, что между параметрами bhyve я передаю 4 слота моей видеокарты, nvidia geforce 2080 ti, которые следующие:

02:00.0 VGA совместимый контроллер: NVIDIA Corporation TU102 
[GeForce RTX 2080 Ti]
02:00.1 Аудиоустройство: NVIDIA Corporation TU102 High Definition 
Audio Controller
02:00.2 Контроллер USB: NVIDIA Corporation TU102 USB 3.1 Host 
Controller
02:00.3 Контроллер последовательной шины: NVIDIA Corporation TU102 USB 
Type-C UCSI Controller

Что я сделал в виртуальной машине OI? Я установил xorg; mate и драйверы nvidia, а затем выдал команду: "startx". Я ожидал, что мой внешний монитор (подключенный к HDMI порту видеокарты Geforce 2080 ti) сможет включиться, но этого не произошло. Вместо этого я вижу какую-то ошибку, которая мешает этому произойти:

https://ibb.co/YbMW5F6

Вот файл xorg.conf, который я создал:

Section "Device"
        Identifier  "Card0"
        Driver      "nvidia"
        BusID       "PCI:0:0:8"
EndSection

Я надеюсь, что адрес 0:0:8 правильный, согласно PCI адресу, присвоенному видеокарте:

https://ibb.co/KqFqfRS

Я не понимаю, почему он хочет использовать устройство 0:0:29 вместо 0:0:8, когда я использовал 0:0:8, а 0:0:29 нельзя использовать, потому что это фреймбуфер....

Ответ или решение

Установка и настройка Xorg и драйверов NVIDIA в виртуализированной среде OpenIndiana с использованием bhyve на FreeBSD 14.1 может быть сложной задачей. Ваша текущая настройка уже включает в себя проброс графического процессора и настройку некоторых параметров bhyve. Рассмотрим, как правильно настроить систему, чтобы избежать возникших проблем.

1. Проверка конфигурации bhyve

Параметры, с которыми вы запускаете виртуальную машину, в целом выглядят логично. Однако следует убедиться, что параметры проброса графических устройств корректны. Для вашего GeForce RTX 2080 Ti, вы должны использовать правильные идентификаторы PCI для каждого устройства.

Обратите внимание, что в вашем случае вы пробрасываете три устройства, и убедитесь, что они корректно представлены в операционной системе OpenIndiana:

-s 8:0,passthru,2/0/0  # VGA
-s 8:1,passthru,2/0/1  # Audio
-s 8:2,passthru,2/0/2  # USB
-s 8:3,passthru,2/0/3  # USB Type-C 

Проверьте, правильно ли указаны идентификаторы 2/0/X для вашего графического устройства.

2. Настройка xorg.conf

Ваш файл конфигурации Xorg (xorg.conf) вызывает некоторые вопросы. Для начала, убедитесь, что вы правильно настроили запись для драйвера NVIDIA. В частности, строка должна выглядеть следующим образом:

Section "Device"
    Identifier  "Card0"
    Driver      "nvidia"
    BusID       "PCI:2:0:0"  # Уточните BusID согласно вашей системе
EndSection

Здесь BusID должен отражать актуальный идентификатор вашего GPU. Важно правильно указать номер шины, устройства и функции.

3. Установка и конфигурация драйверов NVIDIA

Убедитесь, что вы используете правильную версию драйвера NVIDIA для вашей конфигурации. Для этого выполните следующие команды в OpenIndiana:

pkg install nvidia-driver

После установки драйвера необходимо создать модуль конфигурации nvidia, например, добавив его в /etc/modload.conf:

nvidia

4. Проверка логов

Обязательно просмотрите логи Xorg, которые находятся в /var/log/Xorg.0.log. Это важно для диагностики, так как ошибки в логах могут дать подсказку о том, почему графическая настройка не загружается. Ищите строки с "EE" (ошибки) и "WW" (предупреждения).

5. Проверка подключения монитора

Убедитесь, что монитор действительно подключен к HDMI и работает на штатных настройках. Попробуйте подключить монитор к другому устройству или использовать другой кабель HDMI, чтобы исключить проблемы со сторонними компонентами.

6. Запуск X сервер

После всех вышеперечисленных настроек попробуйте снова запустить X сервер с помощью команды:

startx

Если он не запускается, снова проверьте логи и конфигурацию.

Заключение

Работа с виртуальными машинами и графическими драйверами может быть деликатным процессом, особенно при использовании проброса устройств. Следуя рекомендациям выше и убедившись, что все параметры настроены правильно, вы сможете запустить Xorg с драйверами NVIDIA на OpenIndiana. Если проблемы сохраняются, возможно, стоит рассмотреть возможность использования других драйверов или обновление программного обеспечения виртуализации.

Оцените материал
Добавить комментарий

Капча загружается...