Внутренний экран ноутбука не обнаружен при использовании драйвера Nvidia
Итак, для некоторого фона: я использую Ubuntu 18.04 на ноутбуке HP, который использует двойную настройку графического процессора. Раньше я использовал его только с драйвером Nouveau, но недавно я хотел добавить второй монитор, поэтому я переключился на проприетарный драйвер Nvidia 390.77 (который сам по себе был чем-то вроде одиссеи).
Теперь проблема в том, что хотя вторичный монитор (подключенный через HDMI) работает нормально, основной встроенный экран ноутбука - нет. Во время последовательности загрузки на экране ноутбука все отображается как обычно, включая меню grub и журнал запуска.
Но в тот момент, когда журнал достигает "Запущенный диспетчер пользователей для UID 120" (в этот момент, предположительно, запускается графический драйвер), экран ноутбука там зависает, и весь дополнительный вывод отображается на дополнительном мониторе. Настройки дисплея Ubuntu распознают только один дисплей (внешний монитор), как и nvidia-settings
,
Что может быть примечательно, так это то, что я выполняю двойную загрузку этой системы вместе с Windows 10, и в Windows эта проблема не возникает, оба дисплея работают нормально и, как и следовало ожидать, там.
Теперь я лично подозреваю, что это может быть связано с двумя графическими процессорами, поскольку Intel обычно выводит на экран ноутбука, а Nvidia - на порт HDMI, но я не уверен.
Я попытался использовать Intel GPU вместо этого, через sudo prime-select intel
, но в этом случае драйвер Nvidia вообще не загружался, и я мог использовать только основной экран ноутбука, пока внешний монитор не был распознан (то есть аналогично поведению в Nouveau). Кроме того, это приводит к очень низкому разрешению, которое можно обойти, только вручную добавив новый режим через xrandr
,
Что касается некоторых, возможно, соответствующих данных, вот вывод lswh -C video
:
*-display
description: VGA compatible controller
product: GP107M [GeForce GTX 1050 Ti Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:142 memory:b3000000-b3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:4000(size=128) memory:b4000000-b407ffff
*-display
description: VGA compatible controller
product: Intel Corporation
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 04
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:141 memory:b2000000-b2ffffff memory:c0000000-cfffffff ioport:5000(size=64) memory:c0000-dffff
И вот xrandr
, Заслуживает внимания то, что обычное название дисплея ноутбука, eDP-1
, даже не перечислено здесь:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
HDMI-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
1920x1080 60.00*+ 59.94 50.00 50.00
1680x1050 59.95
1600x900 60.00
1440x900 59.89
1280x1024 60.02
1280x800 59.81
1280x720 60.00 59.94 50.00
1024x768 60.00
800x600 60.32
720x576 50.00
720x480 59.94
640x480 59.94
Наконец, вот xorg.conf
:
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 390.77 (buildmeister@swio-display-x64-rhel04-14) Tue Jul 10 23:19:22 PDT 2018
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
6 ответов
Во время моих попыток исправления я запустил Ubuntu с флешки через "try Ubuntu". Как оказалось, в этой среде оба монитора отлично работали, не требуя дополнительной настройки. Поэтому я пришел к выводу, что проблема не обязательно связана с какой-либо конфигурацией оборудования, а скорее с некоторой ошибкой в моей конфигурации Ubuntu. Для этого оказалось, что решение сводится к простой переустановке Ubuntu оптом.
Конкретные шаги, которые я предпринял, на случай, если кто-нибудь окажется в подобной ситуации:
- Создайте резервную копию моей / home / папки и любых важных данных из раздела Ubuntu.
- Загрузился с USB-накопителя Ubuntu, выбрал "Установить Ubuntu" и выбрал "Стереть Ubuntu 18.04 и переустановить".
- После установки первая попытка загрузки не удалась из-за проблемы с графическим оборудованием. Я обошел это, добавив "nouveau.modeset=0" в командную строку grub по умолчанию. Это было необходимо только один раз для загрузки и больше не нужно было впоследствии.
- Я установил диск Nvidia 390.77 через интерфейс дополнительных драйверов Ubuntu.
- Перезагрузился еще раз, и все заработало!
Я до сих пор не знаю, что могло послужить причиной проблемы, но это еще раз показывает, что в случае сомнений вы можете просто попытаться сплющить свою систему и переустановить.
Нечто подобное случилось со мной. Оказалось, что это было вызвано чем-то в /etc/X11/xorg.conf
файл. К счастью, был файл конфигурации nvidia по умолчанию, который я мог использовать.
Это решило мою проблему:
cd /etc/X11
sudo rm xorg.conf
sudo cp xorg.conf.nvidia-xconfig-original xorg.conf
reboot
Сброс файла конфигурации X11 (генерируется по умолчанию nvidia-config
только для одного монитора) исправил ту же проблему и для меня:
sudo > /etc/X11/xorg.conf
reboot
Примечание: это то же самое, что и решение в предыдущем комментарии только потому, что /etc/X11/xorg.conf.nvidia-xconfig-original фактически является пустым (нулевым) файлом.
Я просто удалил /etc/X11/xorg.conf и /etc/X11/xorg.conf.nvidia-xconfig-original и перезагрузился. Это сработало для меня!
У меня была такая же проблема, и удаление файла не решило мою проблему. В моем случае причина заключалась в том, что мое устройство Intel не было распознано
xorg
и, таким образом, мой сервер Nvidia.
Прежде чем двигаться дальше, я должен отметить, что это решение работает только с (в отличие от
gdm
) Диспетчер отображения. Я не могу понять, почему. Но тем не менее, я размещаю его здесь, поскольку это может помочь кому-то еще. Пожалуйста, убедитесь, что вы переключились, прежде чем попробовать это решение. (Смотрите в конце поста).
Изменение, чтобы заставить его распознавать, решило мою проблему. Поэтому, если этот файл уже удален, сначала создайте заново
xorg.conf
по
sudo nvidia-xconfig
затем добавьте следующие строки в конце
/etc/X11/xorg.conf
файл
Section "Device"
Identifier "intel"
Driver "modesetting"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
затем перезагрузите компьютер.
Обратите внимание, что вы можете переключить диспетчер отображения,
sudo dpkg-reconfigure gdm
(или же
lightdm
) и выберите тот, который вы хотите использовать в диалоговом окне. Если у вас возникнут проблемы, вы можете загрузить Ubuntu в режиме восстановления и снова переключиться.
Просто хочу поделиться, что происходит после установки нового драйвера для NVIDIA, на основе этой статьи https://9to5linux.com/nvidia-440-100-linux-graphics-driver-released-with-support-for-new-gpus
Драйвер работает хорошо (но поскольку однажды он вышел из строя, я не использовал опцию DKMS при переустановке), установка прошла успешно, но NVIDIA обнаруживает только мой внешний монитор, я помню, что установка драйвера также перенастроила мой старый
xorg.conf
файл на
/etc/X11
.
Итак, исправление заключалось в том, чтобы просто удалить этот файл или резервную копию куда-нибудь, а затем перезагрузить компьютер, пока внешний монитор все еще подключен к вашему ноутбуку. это обнаружит ваши мониторы во время первой загрузки.