- Вопрос или проблема
- Ответ или решение
- Внешний монитор не работает на Ubuntu с NVIDIA: Подробное руководство
- 1. Проверка подключения и оборудования
- 2. Обновление системных пакетов
- 3. Установка и проверка драйверов NVIDIA
- 4. Настройки PRIME
- 5. Редактирование конфигурации
- 6. Проверка с помощью xrandr
- 7. Другие шаги для диагностики
- 8. Пробный запуск Live USB
- Заключение
Вопрос или проблема
У меня Precision 7530 с i7-8850H и NVIDIA Quadro P2000, и я использую Ubuntu 18.04. Теперь, после какого-то времени, внешний монитор, подключенный через DisplayPort (кабель DisplayPort to HDMI, где DisplayPort подключен к ноутбуку, а HDMI — к монитору), перестал работать. Я использую эту рабочую станцию на работе с док-станцией TB18DC, к которой подключены 2 внешних монитора, и они работают должным образом. Но дома у меня нет док-станции, и с описанной настройкой внешний монитор перестал работать. Он работал несколько месяцев назад. В то время, когда он работал, я делал обычные обновления программного обеспечения Ubuntu, также была обновлена прошивка BIOS до 1.5.2 (не уверен, какая версия у меня была раньше, это был первый раз, когда я обновлял прошивку после покупки, так что возможно 1.0.7?).
Я также установил драйвер NVIDIA 390. Но он тоже не работает с драйвером Xorg.
xrandr сообщает с подключенным монитором DisplayPort:
Экран 0: минимум 320 x 200, текущий 1920 x 1080, максимальный 8192 x 8192
eDP-1 подключен основной 1920x1080+0+0 (нормально, слева, инверсный, вправо по оси x, по оси y) 344мм x 193мм
1920x1080 60.03*+ 60.01 59.97 59.96 59.93 48.02
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1440x900 59.89
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1360x768 59.80 59.96
1280x800 59.99 59.97 59.81 59.91
1152x864 60.00
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
800x512 60.17
700x525 59.98
800x450 59.95 59.82
640x512 60.02
720x450 59.89
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
680x384 59.80 59.96
640x400 59.88 59.98
576x432 60.06
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
DP-1 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
DP-2 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
HDMI-1 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
DP-3 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
Я также пробовал следующее:
- установить lightdm и использовать его (без эффекта)
- отключить переключаемую графику в BIOS (без эффекта)
- постепенно понижать версию прошивки до 1.2.5 (так как мне не удалось понизить до 1.0.7. без эффекта)
- сбросить настройки BIOS на значения по умолчанию (без эффекта)
- переустановить драйвер NVIDIA (без эффекта)
- попробовать без каких-либо драйверов NVIDIA (без эффекта)
- Отключить безопасную загрузку (без эффекта). Но я также ничего не получаю, когда запускаю
lsmod | grep nvidia
Я загрузился с живой флешки Ubuntu, и без внешнего монитора все работало нормально, но с внешним монитором я получил следующее сообщение об ошибке:
изображение сообщения об ошибке
Есть идеи, как заставить монитор работать? Спасибо!
Я недавно установил драйвер nvidia-418 на свой ноутбук, который использует Ubuntu 18.04. Сначала внешний монитор работал идеально, но после того как я переключился из режима энергосбережения (sudo prime-select intel) обратно в режим производительности (sudo prime-select nvidia), второй монитор больше не обнаруживался.
Я обнаружил, что prime-select создает конфигурационный файл, который вызывает проблему. Он включает опцию nvidia-drm modeset. Вы можете просто отменить изменение, внесенное prime-select, закомментировав эту опцию. Она не будет сброшена, потому что prime-select записывает этот файл только тогда, когда он еще не существует.
Откройте файл в любимом редакторе (vim, nano, gedit и т.д.).
sudo nano /lib/modprobe.d/nvidia-kms.conf
И закомментируйте опцию nvidia-drm modeset.
# Этот файл был сгенерирован nvidia-prime
# Установите значение на 0, чтобы отключить режим установки
# options nvidia-drm modeset=1
Надеюсь, это поможет вам и многим другим!
ps: Совершенно нормально, что второй монитор не обнаруживается в режиме энергосбережения, когда соединение является частью видеокарты NVIDIA.
Мне больше нравится решение от thomasnabgelis, но другим рабочим решением будет использование дисплейного менеджера lightdm. Для этого просто выполните
sudo apt-get install lightdm
и
sudo dpkg-reconfigure lightdm
если он не был настроен после установки.
Почему это происходит? Я потратил много времени, пытаясь понять… nvidia-drm предоставляет решение для устранения разрывов, хотя я не заметил никакой разницы, если отключить эту функцию. Цитата с форума NVIDIA (тема):
nvidia-drm modeset=1 нужен для отображения без разрывов, но так как это
включает linux kms для драйвера nvidia, gdm считает, что он может использовать
wayland. Наличие параллельной сессии wayland делает невозможным
для X обнаружить любые выходы на GPU NVIDIA
Не рискуя редактированием конфигурационных файлов (в которых я не уверен, какие эффекты они могут вызвать), мое решение состояло в том, чтобы выбрать опцию NVIDIA (Performance Mode)
и перезагрузить после выполнения команды nvidia-settings
.
Спасибо всем за ваши подсказки. Мой второй монитор был мертв пару дней назад. Я снова заставил его работать, выполнив следующие шаги:
- sudo nvidia-settings -> если это показывает ошибку, значит, драйвер nvidia неактивен
- настройки > информация > программное обеспечение > дополнительные драйверы -> переключитесь на текущую (или не совсем текущую) версию драйвера nvidia. Если нет ошибки, пропустите шаг 3.
- установите недостающие драйверы nvidia: sudo apt install nvidia-driver-450 (или подобные)
- перезагрузка
- работает (по крайней мере для меня)
Надеюсь, это поможет кому-то.
С уважением, Вернер
Сделайте:
sudo apt update && sudo apt upgrade -y
sudo ubuntu-drivers autoinstall
reboot
Это решило проблему для меня.
Я искал решение в интернете, когда получил свой MSI GS65 Stealth с GeForce GTX 1660 Ti/PCIe/SSE2 и установил Ubuntu 18.04. Я попробовал практически все, но ничего не помогло.
Что помогло мне, так это установка Ubuntu 19.10. Все заработало сразу, и учитывая, что Ubuntu 20.04 LTS уже на подходе, это кажется разумным решением.
Ни один из методов не помог мне. В конце концов, после часов поисков отключение безопасной загрузки в BIOS помогло.
https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1771185
Я столкнулся с такой же проблемой с новым ноутбуком HP Omen с RTX 2060.
Я следовал инструкциям werneR выше (с использованием GUI “Программное обеспечение и обновления”), но все равно это не сработало.
В конце концов, я понял, что проблема в SecureBoot. При перезагрузке убедитесь, что вместо нажатия “Продолжить загрузку” вы выбираете “Зарегистрировать MOK” и вводите пароль, который вы установили для SecureBoot при использовании GUI. Если вы этого не сделаете, изменения драйвера не вступят в силу (это вся суть SecureBoot), и ваш второй монитор не будет работать.
По какой-то причине в Ubuntu 20.04 при каждом обновлении ядра система теряет свою настройку с двумя мониторами и начинает работать только с одним монитором из-за отсутствия одновременного обновления linux-modules-nvidia-390XXXX
(в моем случае).
Причина в том, что в ходе каждого обновления ядра Ubuntu модуль драйвера NVIDIA для этого нового ядра не обновляется автоматически, и его нужно делать вручную.
В моем случае моя рабочая станция на Ubuntu 20.04 была обновлена с linux-modules-5.4.0-39-generic
до linux-modules-5.4.0-40-generic
. После обновления я потерял конфигурацию с двумя мониторами.
Чтобы это исправить, я установил linux-modules-nvidia-390-5.4.0-40-generic
(новое ядро) и перезагрузил систему. Готово!
Режим с двумя мониторами восстановлен:
$ nvidia-smi
Чт Июл 2 18:35:01 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.138 Версия драйвера: 390.138 |
|-------------------------------+----------------------+----------------------+
| GPU Имя Постоянство-M| Bus-Id Disp.A | Нестабильная некорр. ECC |
| Вентилятор Температура Перф. Потребление/Макс.| Использование памяти | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 550 Ti Выкл | 00000000:04:00.0 N/A | N/A |
| 41% 43C P0 N/A / N/A | 344MiB / 957MiB | N/A По умолчанию |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Процессы: Использование GPU памяти |
| GPU PID Тип Имя процесса Использование |
|=============================================================================|
| 0 Не поддерживается |
+-----------------------------------------------------------------------------+
У меня HP OMEN 15-ek0062la – 15.6″ (1M1L9LA) с NVidia TU117M [GeForce GTX 1650 Ti Mobile]
Внешние мониторы не работают с рекомендуемым драйвером nvidia, но работают с nvidia-driver-470
. Возможно, сначала потребуется выполнить sudo prime-select nvidia
.
Я также не могу получить свой внешний дисплей, который распознается, после месяца нормальной работы с Ubuntu 20.04
xrandr показывает мне :
...
320x180 59.84 59.32
DP-1-1 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
HDMI-1-1 отключен (нормально, слева, инверсный, вправо по оси x, по оси y)
Я уже отключил безопасную загрузку.
Я пробовал закомментировать
# options nvidia-drm modeset=1
в /lib/modprobe.d/nvidia-kms.conf
и все равно ничего. Также выполнил
sudo apt-get install linux-modules-nvidia-390-generic
и также пробовал prime-select intel
, а затем снова на nvidia, пока ничего не помогло. Когда в режиме nvidia, я получаю нормальный ответ от nvidia-smi, а именно
jeremy@jeremy-Blade:~/$ nvidia-smi
Чт Дек 10 18:27:28 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 455.38 Версия драйвера: 455.38 Версия CUDA: 11.1 |
|-------------------------------+----------------------+----------------------+
| GPU Имя Постоянство-M| Bus-Id Disp.A | Нестабильная некорр. ECC |
| Вентилятор Температура Перф. Потребление/Макс.| Использование памяти | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 GeForce GTX 1060 Выкл | 00000000:01:00.0 Выкл | N/A |
| Н/Д 67C P3 22W / Н/Д | 285MiB / 6078MiB | 21% По умолчанию |
| | | Н/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Процессы: |
| GPU GI CI PID Тип Имя процесса Использование GPU памяти |
| ID ID Использование |
|=============================================================================|
| 0 Н/Д Н/Д 1186 G /usr/lib/xorg/Xorg 45MiB |
| 0 Н/Д Н/Д 1773 G /usr/lib/xorg/Xorg 184MiB |
| 0 Н/Д Н/Д 1934 G /usr/bin/gnome-shell 32MiB |
| 0 Н/Д Н/Д 3435 G /usr/lib/firefox/firefox 1MiB |
Тем не менее, что в конце концов решило эту проблему, так это установка новейшего драйвера NVIDIA.
У меня была такая же проблема. Но на самом деле это просто было связано с тем, что мой ноутбук был отключен от сети. Он переходит в режим энергосбережения, который отключает расширение экрана на второй внешний монитор.
У меня также была эта проблема на ThinkPad P14s при подключении к DELL 34″. На самом деле это было вызвано слишком большим объемом данных, проходящих через кабель USB-C.
Просто отключив кабель Ethernet от монитора DELL, он заработал 😂.
Для справки, вот устройства, подключенные к монитору:
- USB-мышь
- USB-клавиатура
- USB-принтер
- 10GbE Ethernet
Странно, но иногда это работает даже с подключенным Ethernet. Но в основном работает так, чтобы сначала дать графическим драйверам установить соединение с дисплеем монитора, а затем подключить Ethernet, если это необходимо.
Я выполнил то, что было предложено в принятом решении. Но все равно мой внешний монитор не обнаруживался через usb-c соединение. Так что я отменил изменение и перезагрузил. Теперь все работает!
Обновление: Более простое решение
Я нашел более простое решение, чем мои предыдущие находки. Когда возникает такая проблема, я выполняю следующие шаги:
- убедитесь, что
NVIDIA (Performance Mode)
выбрана в качестве драйвера по умолчанию- перезагрузите систему после переключения
- удалите файл
/lib/modprobe.d/nvidia-kms.conf
- перезагрузите систему
- Файл
/lib/modprobe.d/nvidia-kms.conf
будет создан снова, и драйвер обнаружит внешний монитор
Ответ или решение
Внешний монитор не работает на Ubuntu с NVIDIA: Подробное руководство
Если у вас возникла проблема с подключением внешнего монитора к ноутбуку Precision 7530 с процессором i7-8850H и графической картой NVIDIA Quadro P2000 под управлением Ubuntu 18.04, данное руководство поможет вам устранить причины неисправности и восстановить работоспособность вашего оборудования.
1. Проверка подключения и оборудования
Сначала убедитесь в корректности физического подключения:
- Проверьте, надежно ли подключен кабель DisplayPort к ноутбуку и HDMI к монитору.
- Попробуйте использовать другой кабель или порт, если возможно.
- Убедитесь, что монитор включен и находится на правильном входе.
2. Обновление системных пакетов
Обновите пакеты системы и драйвера:
sudo apt update && sudo apt upgrade -y
3. Установка и проверка драйверов NVIDIA
Вы уже установили драйвер NVIDIA 390, но обратите внимание на следующие пункты:
-
Убедитесь, что загрузилась правильная версия драйвера. Вы также можете удалить и заново установить драйвер, используя:
sudo apt remove --purge nvidia-* sudo apt install nvidia-driver-390
-
После установки перезагрузите систему и проверьте, работает ли внешний монитор.
4. Настройки PRIME
Если вы используете графику NVIDIA с поддержкой PRIME, вам следует убедиться, что выбран режим производительности. Сделать это можно командой:
sudo prime-select nvidia
После выполнения команды, перезагрузите систему еще раз.
5. Редактирование конфигурации
Если проблема сохраняется, возможно, потребуется отредактировать файл конфигурации nvidia-kms.conf
:
sudo nano /lib/modprobe.d/nvidia-kms.conf
Проверить, что в нем строка
options nvidia-drm modeset=1
закомментирована:
# options nvidia-drm modeset=1
Сохраните изменения и перезагрузите систему.
6. Проверка с помощью xrandr
После перезагрузки выполните команду xrandr
, чтобы просмотреть текущие подключенные экраны и их состояние:
xrandr
Убедитесь, что внешний монитор отображается в выводе команды. Если он по-прежнему не отображается, попробуйте вручную его добавить:
xrandr --addmode DP-1 1920x1080
xrandr --output DP-1 --auto
7. Другие шаги для диагностики
- Проверка режима энергосбережения: Убедитесь, что ноутбук подключен к электросети, так как режим энергосбережения может отключать дополнительные мониторы.
- Безопасная загрузка (Secure Boot): Иногда отключение Secure Boot в BIOS может влиять на работу драйверов NVIDIA.
- Проблемы совместимости: Возможны случаи, когда некоторые версии драйверов могут работать лучше с определенными версиями Ubuntu. Если ничего не помогает, попробуйте установить другую версию драйвера, например
nvidia-driver-450
.
8. Пробный запуск Live USB
Если ни один из предыдущих шагов не помог, попробуйте загрузиться с Live USB версии Ubuntu и проверьте, работает ли внешний монитор. Это поможет исключить программные проблемы вашей установленной системы.
Заключение
Если вы хотите устранить проблему с неработающим внешним монитором на Ubuntu с графикой NVIDIA, следуйте приведенным шагам последовательно. Каждый из шагов направлен на диагностику и определение возможной причины неисправности. Если проблема не решается, возможно, стоит рассмотреть возможность обновления операционной системы до более свежей версии, такой как Ubuntu 20.04, которая предлагает улучшенную поддержку оборудования и драйверов.
Пожалуйста, оставляйте комментарии, если вам нужна дополнительная помощь или возникли другие вопросы!