xorg не запускается на freebsd даже после установки nvidia и drm-kmod

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

Итак, я решил использовать FreeBSD как свою основную операционную систему, но Xorg, похоже, не работает. Сначала, когда я попытался запустить startx в первый раз (я установил драйверы NVIDIA), он выдал

(EE) Невозможно запустить в режиме framebuffer. Пожалуйста, укажите busIDs для всех режимов framebuffer

Вот полный лог-файл – https://pastebin.com/sKCsm2Nn

Затем я попробовал nvidia-xconfig, и он выдал мне это-

(EE) Экранов не найдено (EE)

Вот полный лог – https://pastebin.com/5kXndP8J
У меня Lenovo Flex 2-14, вот характеристики моего GPU-

vgapci0@pci0:0:2:0: class=0x030000 card=0x397817aa chip=0x0a168086 rev=0x0b hdr=0x00
vendor=”Intel Corporation”
device=”Haswell-ULT Integrated Graphics Controller”
class = display

vgapci1@pci0:4:0:0: class=0x030200 card=0x381717aa chip=0x114010de rev=0xa1 hdr=0x00
vendor=”NVIDIA Corporation”
device=”GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M]”
class = display

Я установил nvidia-driver-390-390.138_1, drm-kmod(i915kms.ko).

Я предполагаю, что вы используете 12.2-RELEASE. Есть много вопросов в контрольном списке.

  • drm-kmod сломан https://twitter.com/vermaden/status/1321375859429773312, вам нужно собрать его из порта
  • вам нужно добавить пользователя в группу video с помощью # pw group mod video -m ваше_имя_пользователя
  • также есть возможность переключиться на 12.1-RELEASE или CURRENT
  • добавление # sysrc kld_list+="/boot/modules/i915kms.ko"
  • конечно, после правильной установки nvidia-driver используйте kldload nvidia-modeset, а затем перезагрузитесь

Надеюсь, что что-то из этого поможет

Вам нужно использовать xorg.conf для NVIDIA

Просто возьмите “BusID”, сгенерированный X -configure из /root/xorg.conf для вашего устройства и используйте его с /etc/X11/xorg.conf

где BusID является вашим BusID, если нет, то устройство 5:0:0

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BusID "PCI:5:0:0"
EndSection

Ваш /etc/rc.conf должен выглядеть так: “если вы используете lightdm, в противном случае игнорируйте строку lightdm”

linux_enable="YES"
dbus_enable="YES"
hald_enable="YES"
lightdm_enable="YES"
kld_list="nvidia nvidia-modeset linux"

.

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

Если у вас возникают проблемы с запуском Xorg на FreeBSD после установки драйверов NVIDIA и drm-kmod, стоит пройтись по ряду шагов и рекомендаций, чтобы решить эту проблему. Данная инструкция поможет вам в устранении неполадок, основываясь на описанных вами ошибках.

1. Убедитесь в Совместимости Драйверов

Во-первых, важно убедиться, что вы используете совместимую версию FreeBSD и драйверов NVIDIA. Вы упомянули, что скорее всего используете FreeBSD 12.2-RELEASE. Чтобы избежать возможных проблем, можете рассмотреть возможность использования другой версии, например, 12.1-RELEASE или даже CURRENT.

2. Установка и Конфигурация drmk-kmod

Вы упомянули о проблемах с drm-kmod. В некоторых случаях drm-коды могут быть не до конца исправны, что может приводить к сбоям при загрузке Xorg. Рекомендуется собрать drm-kmod из портов:

cd /usr/ports/graphics/drm-kmod
make install clean

3. Добавление Пользователя в Группу Видео

Убедитесь, что ваш пользователь добавлен в группу video. Это можно сделать с помощью следующей команды:

# pw group mod video -m your_username

Замените your_username на ваше имя пользователя.

4. Настройка /etc/rc.conf

В файле конфигурации /etc/rc.conf необходимо добавить нужные параметры:

kld_list="nvidia nvidia-modeset i915kms"
dbus_enable="YES"
hald_enable="YES"

Если вы используете LightDM, не забудьте добавить:

lightdm_enable="YES"

5. Создание Конфигурационного файла Xorg

Вы упомянули, что команда nvidia-xconfig вернула ошибку «no screens found». Попробуйте создать конфигурационный файл вручную, так как это может помочь Xorg корректно определять видеоустройства. Например:

  1. Сначала выполните команду для получения базового файла конфигурации:
X -configure
  1. Затем откройте файл /root/xorg.conf и внесите данные в /etc/X11/xorg.conf, добавив раздел с данными о BusID. Пример:
Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BusID "PCI:4:0:0"  # Используйте правильный BusID из вашего вывода
EndSection

6. Загрузка Модулей

После всех изменений попытайтесь загрузить необходимые модули и перезагрузить систему:

kldload nvidia-modeset

Затем перезагрузите FreeBSD:

reboot

7. Проверка Логов

Если Xorg все еще не запускается, внимательно изучите логи, находящиеся в /var/log/Xorg.0.log, на предмет других ошибок и предупреждений. Это может дать вам дополнительную информацию о том, что происходит не так.

Заключение

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

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

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