Вопрос или проблема
конкретно для RHEL-8.10 (или, как я полагаю, более поздних версий), где старый /etc/X11/org.conf
больше не используется.
- С подключенным монитором от серверного порта материнской платы VGA,
- и с установленными одной или несколькими графическими картами Nvidia,
- при установке RHEL-8.10 с iso как
сервер с GUI
графика на мониторе, подключенном к серверному порту VGA, работает. Вы можете пройти процесс установки до тех пор, пока не будет сказаноперезагрузить
, и после этого экранпринять лицензионное соглашение
даже появляется и работает. - Но после этого графический экран входа в систему при вводе имени пользователя просто пуст.
- Это было прерывисто: выполнение
ctrl-alt-f2
иногда давало полностью текстовый стиль отображенияmulti-user.target
, но после последующих перезагрузок это больше не работало, так что вам либо нужно иметьsystemctl set-default multi-user.target
в действии, либо войти в систему через SSH и выполнитьsystemctl isolate multi-user.target
, чтобы получить какую-либо функциональность на консольном VGA мониторе. lspci | grep -i vga
отвечает- 03:00.0 VGA совместимый… Matrox Electronics G200ew3
- 3b:00.0 VGA совместимый… Nvidia GA104GL RTXA4000
- и на некоторых серверах у меня появляется вторая перечисленная Nvidia GA104GL RTXA4000
На нескольких серверах, которые у меня есть, когда у них установлено 2 карты Nvidia, эта проблема присутствует всегда. Но у меня есть 2 сервера с установленной одной картой Nvidia каждый, и один работает с графикой через порт VGA в graphical.target
, но другой сервер нет – и я установил RHEL-8.10 одинаково на обоих.
Что вызывает это, и как можно исправить графику в RHEL 8 в этой ситуации? Какие файлы мне нужно искать? Как мне указать Linux конкретно выводить на 03:00.0 Matrox G200ew3
?
Ответ или решение
Основная проблема, описанная в вашем вопросе, заключается в том, что после установки RHEL 8.10 и перезагрузки системы, графическая оболочка не отображается должным образом на мониторе, подключенном к VGA-порту материнской платы. Это может быть связано с конфликтами между устройствами Matrox G200ew3 и Nvidia GA104GL RTXA4000. Для решения этого вопроса необходимо провести диагностику и настройку системы, чтобы она использовала нужный графический адаптер.
Теория
В современных серверах и рабочих станциях часто встречается установка нескольких графических карт, что иногда приводит к конфликтам, особенно если используется более одного типа провайдера графических процессоров. В Linux, а конкретно в RHEL 8, используемая графическая подсистема по умолчанию — это X.Org или Wayland. При наличии конфликтов в графических выходах часто возникает необходимость вручную указывать, какой из графических адаптеров должен использоваться для вывода изображения.
В RHEL 8 настройка X.Org больше не использует файлы конфигурации как, например, "/etc/X11/xorg.conf", но это можно обойти, создавая конфигурационные файлы в каталоге "/etc/X11/xorg.conf.d/".
Пример
На вашей машине установка нескольких графических карт может вызывать сложности с определением первичного устройства вывода. Конфликт между встроенным устройством Matrox и мощной картой Nvidia может вызвать отключение или неправильную инициализацию графического интерфейса.
Например, при запуске команды lspci | grep -i vga
, мы видим следующее:
- 03:00.0 VGA совместимое устройство… Matrox Electronics G200ew3
- 3b:00.0 VGA совместимое устройство… Nvidia GA104GL RTXA4000
Далее предполагается, что используется графическая карта Matrox для основного вывода. Однако в реальности система может попытаться инициализировать Nvidia в качестве графического адаптера для GUI, из-за чего и возникают проблемы при загрузке в graphical.target
.
Применение
Для исправления ситуации, вам необходимо вручную указать, какая видеокарта должна использоваться. Это можно сделать следующим образом:
-
Создание конфигурационного файла для X.Org:
Создайте конфигурационный файл, который укажет X.Org использовать Matrox:
sudo mkdir -p /etc/X11/xorg.conf.d/ sudo nano /etc/X11/xorg.conf.d/10-matrox.conf
Содержимое файла
/etc/X11/xorg.conf.d/10-matrox.conf
:Section "Device" Identifier "Matrox Card" Driver "modesetting" BusID "PCI:3:0:0" EndSection
Это укажет X.Org использовать карту Matrox как основной графический адаптер. Указание BusID гарантирует, что устройство распознается правильно.
-
Обновление GRUB:
Обновите конфигурацию GRUB, чтобы инициализация графики использовала XVGA.
Откройте файл
/etc/default/grub
и добавьте/обновите следующую строку:GRUB_CMDLINE_LINUX="rd.driver.blacklist=nouveau"
Это предотвратит конфликт драйверов Nouveau (из-за Nvidia).
Затем обновите конфигурацию GRUB:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
-
Перезагрузка системы:
После выполнения всех шагов перезапустите вашу систему, чтобы изменения вступили в силу:
sudo reboot
Если после выполнения всех вышеперечисленных шагов проблема не исчезла, стоит проверить следующие моменты:
- Убедитесь, что на вашей системе установлены все актуальные обновления и патчи, так как они могут содержать улучшения и исправления драйверов графических устройств.
- Проверьте, что BIOS/UEFI настроен на использование встроенной графики Matrox в качестве основного устройства вывода.
- Рассмотрите возможность использования проприетарного драйвера Nvidia, если на вашей системе требуется мощность графического процессора Nvidia для специфических задач и вы хотите переключать устройства графического вывода на лету.
Используя данные методы системного администрирования, вы сможете лучше управлять конфликтами между несколькими VGA-устройствами в вашей системе RHEL 8. При необходимости обязательно обратитесь за помощью к дополнительным ресурсам документации RHEL или специализированному техническому специалисту.