Внутренний экран ноутбука не обнаружен при использовании драйвера 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 оптом.

Конкретные шаги, которые я предпринял, на случай, если кто-нибудь окажется в подобной ситуации:

  1. Создайте резервную копию моей / home / папки и любых важных данных из раздела Ubuntu.
  2. Загрузился с USB-накопителя Ubuntu, выбрал "Установить Ubuntu" и выбрал "Стереть Ubuntu 18.04 и переустановить".
  3. После установки первая попытка загрузки не удалась из-за проблемы с графическим оборудованием. Я обошел это, добавив "nouveau.modeset=0" в командную строку grub по умолчанию. Это было необходимо только один раз для загрузки и больше не нужно было впоследствии.
  4. Я установил диск Nvidia 390.77 через интерфейс дополнительных драйверов Ubuntu.
  5. Перезагрузился еще раз, и все заработало!

Я до сих пор не знаю, что могло послужить причиной проблемы, но это еще раз показывает, что в случае сомнений вы можете просто попытаться сплющить свою систему и переустановить.

Нечто подобное случилось со мной. Оказалось, что это было вызвано чем-то в /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.

Итак, исправление заключалось в том, чтобы просто удалить этот файл или резервную копию куда-нибудь, а затем перезагрузить компьютер, пока внешний монитор все еще подключен к вашему ноутбуку. это обнаружит ваши мониторы во время первой загрузки.

Другие вопросы по тегам