Готовлюсь к плавному переезду на freebsd, как раз выходу 12.1, потискал в виртуалке - все круто и довольно понятно. Единственное, что не могу проверить в виртуалке и поиграть с настройками - это видеокарты и драйвера к ним. Поэтому хотелось бы получить мнения\советы\бест практисы по следующим моим умозаключениям.
Итак, есть ноут Intel® Core™ i7-4500U + GeForce GT 750M. Для более детального понимания я хочу установить драйвера для нвидии и интела, после чего, правкой xorg.conf выбирать с какой видеокартой мне работать при запуске иксов. В совместную работу видеокарт и смену видеодрайверов «налету» я пока не полезу, пока не пойму как оно все ворочается и настраивается по отдельности.
1. Для начала нужно узнать как определились видеокарты в системе:
pciconf -lv
Допустим, будет так:
pci0:0:0 - intel
pci0:1:0 - nvidia
Значит в системе доступны обе видеокарты и их можно использовать.
2. Начнем с установки драйвера интел:
используя чудесный гайд: https://forums.freebsd.org/threads/how-to-use-the-old-or-the-new-i915kms-driv..., можно понять, что i7-4500U это 4-ое поколение и нужен драйвер i915kms.ko, который уже поставляется в базовой системе. Для его загрузки нужно только прописать его в rc.conf:
kld_list="i915kms"
после этого (наверно?) видеодрайвер от интела будет загружаться при каждой загрузке системы и его можно будет использовать в xorg.conf
3. Установка драйвера от нвидиа. Захожу на https://www.nvidia.com/Download/index.aspx?lang=en-us, выбираю свою видеокарту и FreeBSDx64, проверяю что 750M есть в списке поддерживаемых продуктов, скачиваю. Распаковываю, сижу смотрю гайд от нвидиа: http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/418.88/README/index.html, шаги такие:
make install
- проверить хотя бы частично установленные компоненты:http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/418.88/README/installedc...
- проверить /etc/rc.conf и /boot/loader.conf на предмет появления записей о nvidia, так как установщик должен сам туда прописать пути до библиотек
3.1 Если что-то пойдет не так с установкой скачанных драйверов со страницы нвидиа, то есть альтернативный путь:
pkg install nvidia-driver
- добавить в rc.conf:
kld_list="nvidia-modeset"
3.2 Нвидии зачем то нужно совместимость с линукс? Делаем:
kldload linux64
pkg install emulators/linux_base-c6
- добавляем в /etc/rc.conf:
linux_enable="YES"
4. На данном этапе в системе установлены драйвера интела и нвидиа и возможно они будут загружаться автоматически при старте системы. Для проверки нужно ребутнуться и посмотреть через kldstat или dmesg, что интел и нвидиа загружены?
5. Настройка xorg. Далее я немного забуксовал.
5.1. В одних гайдах советуют сделать два конфига:
/usr/local/etc/X11/xorg.conf.d/driver-nvidia.conf
с содержимым:Section "Device"
Identifier "Card0"
Driver "intel"
BusID "PCI:0:0:0"
EndSection/usr/local/etc/X11/xorg.conf.d/driver-intel.conf
с содержимым:Section "Device"
Identifier "Card1"
Driver "nvidia"
BusID "PCI:0:1:0"
EndSection- После чего сделать:
Xorg -configure
- И скопировать конфиг:
cp ./xorg.conf.new /etc/X11/xorg.conf
- После чего стартануть иксы. Только я не понимаю, на что влияют driver-intel.conf и driver-nvidia.conf в этом случае?
5.2 Можно забить на driver-intel.conf и driver-nvidia.conf и сделать свой минимальный конфиг:
- с содержимым для интела:
ee /etc/X11/xorg.conf
Section "Device"
Identifier "Card0"
Driver "intel"
BusID "PCI:0:0:0"
EndSection - или
- с содержимым для нвидиа:
ee /etc/X11/xorg.conf
Section "Device"
Identifier "Card1"
Driver "nvidia"
BusID "PCI:0:1:0"
EndSection
6. Внимание, вопрос. Как корректно прописать две видеокарты в xorg, чтобы можно было их выбирать? Есть какие либо рекомендации к шагам в теме? Может быть, что-то улучшить?