Как предотвратить переключение nvidia-auto-select на неправильное разрешение на экране входа?

Вопрос или проблема

У меня небольшая проблема при запуске моего компьютера с Ubuntu. Все проходит гладко, экран входа появляется с правильным разрешением. Затем он переключается на неправильное разрешение, и после входа в систему разрешение снова корректно устанавливается.

Я следил за различными темами, связанными с проблемами драйвера nvidia (сначала у меня был черный экран после замены видеокарты). В этой последней проблеме я просмотрел файл Xorg.0.log и выявил два момента, которые отражают изменения в разрешении.

Первая часть, похоже, настраивает правильное разрешение

[     3.428] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[     3.428] (==) NVIDIA(0): RGB weight 888
[     3.428] (==) NVIDIA(0): Default visual is TrueColor
[     3.428] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[     3.428] (**) NVIDIA(0): Option "Stereo" "0"
[     3.428] (**) NVIDIA(0): Option "nvidiaXineramaInfoOrder" "DFP-4"
[     3.428] (**) NVIDIA(0): Option "SLI" "Off"
[     3.428] (**) NVIDIA(0): Option "MultiGPU" "Off"
[     3.428] (**) NVIDIA(0): Option "BaseMosaic" "off"
[     3.428] (**) NVIDIA(0): Stereo disabled by request
[     3.428] (**) NVIDIA(0): NVIDIA SLI disabled.
[     3.428] (**) NVIDIA(0): NVIDIA Multi-GPU disabled.
[     3.428] (**) NVIDIA(0): Option "MetaModes" "1920x1080 +0+0"
[     3.428] (**) NVIDIA(0): Enabling 2D acceleration
[     4.047] (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
[     4.047] (--) NVIDIA(0):     CRT-0
[     4.047] (--) NVIDIA(0):     DFP-0
[     4.047] (--) NVIDIA(0):     DFP-1
[     4.047] (--) NVIDIA(0):     DFP-2
[     4.047] (--) NVIDIA(0):     DFP-3
[     4.047] (--) NVIDIA(0):     DFP-4 (boot)
[     4.049] (--) NVIDIA(0): CRT-0: disconnected
[     4.049] (--) NVIDIA(0): CRT-0: 400.0 MHz maximum pixel clock
[     4.049] (--) NVIDIA(0): 
[     4.051] (--) NVIDIA(0): DFP-0: disconnected
[     4.051] (--) NVIDIA(0): DFP-0: Internal TMDS
[     4.051] (--) NVIDIA(0): DFP-0: 330.0 MHz maximum pixel clock
[     4.051] (--) NVIDIA(0): 
[     4.051] (--) NVIDIA(0): DFP-1: disconnected
[     4.051] (--) NVIDIA(0): DFP-1: Internal TMDS
[     4.051] (--) NVIDIA(0): DFP-1: 330.0 MHz maximum pixel clock
[     4.051] (--) NVIDIA(0): 
[     4.051] (--) NVIDIA(0): DFP-2: disconnected
[     4.051] (--) NVIDIA(0): DFP-2: Internal DisplayPort
[     4.051] (--) NVIDIA(0): DFP-2: 960.0 MHz maximum pixel clock
[     4.051] (--) NVIDIA(0): 
[     4.052] (--) NVIDIA(0): DFP-3: disconnected
[     4.052] (--) NVIDIA(0): DFP-3: Internal TMDS
[     4.052] (--) NVIDIA(0): DFP-3: 330.0 MHz maximum pixel clock
[     4.052] (--) NVIDIA(0): 
[     4.082] (--) NVIDIA(0): DFP-4: connected
[     4.082] (--) NVIDIA(0): DFP-4: Internal TMDS
[     4.082] (--) NVIDIA(0): DFP-4: 330.0 MHz maximum pixel clock
[     4.082] (--) NVIDIA(0): 
[     4.082] (II) NVIDIA(GPU-0): Found DRM driver nvidia-drm (20150116)
[     4.082] (II) NVIDIA(0): NVIDIA GPU GeForce GTX 970 (GM204-A) at PCI:1:0:0 (GPU-0)
[     4.082] (--) NVIDIA(0): Memory: 4194304 kBytes
[     4.082] (--) NVIDIA(0): VideoBIOS: 84.04.36.00.5e
[     4.082] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[     4.082] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[     4.082] (**) NVIDIA(0):     device DFP-4 (Using EDID frequencies has been enabled on
[     4.082] (**) NVIDIA(0):     all display devices.)
[     4.087] (II) NVIDIA(0): Validated MetaModes:
[     4.087] (II) NVIDIA(0):     "1920x1080+0+0"
[     4.087] (II) NVIDIA(0): Virtual screen size determined to be 1920 x 1080
[     4.095] (WW) NVIDIA(0): DFP-4 does not have an EDID, or its EDID does not contain a
[     4.095] (WW) NVIDIA(0):     maximum image size; cannot compute DPI from DFP-4's EDID.
[     4.095] (==) NVIDIA(0): DPI set to (75, 75); computed from built-in default
[     4.095] (--) Depth 24 pixmap format is 32 bpp
[     4.096] (II) NVIDIA: Using 3072.00 MB of virtual memory for indirect memory
[     4.096] (II) NVIDIA:     access.
[     4.118] (II) NVIDIA(0): Setting mode "1920x1080+0+0"
[     4.166] (==) NVIDIA(0): Disabling shared memory pixmaps
[     4.166] (==) NVIDIA(0): Backing store enabled
[     4.166] (==) NVIDIA(0): Silken mouse enabled
[     4.166] (**) NVIDIA(0): DPMS enabled

Затем, немного дальше, похоже, он сбрасывается

[     7.343] (--) NVIDIA(GPU-0): CRT-0: disconnected
[     7.343] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[     7.343] (--) NVIDIA(GPU-0): 
[     7.346] (--) NVIDIA(GPU-0): DFP-0: disconnected
[     7.346] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[     7.346] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[     7.346] (--) NVIDIA(GPU-0): 
[     7.346] (--) NVIDIA(GPU-0): DFP-1: disconnected
[     7.346] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[     7.346] (--) NVIDIA(GPU-0): DFP-1: 330.0 MHz maximum pixel clock
[     7.346] (--) NVIDIA(GPU-0): 
[     7.346] (--) NVIDIA(GPU-0): DFP-2: disconnected
[     7.346] (--) NVIDIA(GPU-0): DFP-2: Internal DisplayPort
[     7.346] (--) NVIDIA(GPU-0): DFP-2: 960.0 MHz maximum pixel clock
[     7.346] (--) NVIDIA(GPU-0): 
[     7.346] (--) NVIDIA(GPU-0): DFP-3: disconnected
[     7.346] (--) NVIDIA(GPU-0): DFP-3: Internal TMDS
[     7.346] (--) NVIDIA(GPU-0): DFP-3: 330.0 MHz maximum pixel clock
[     7.346] (--) NVIDIA(GPU-0): 
[     7.376] (--) NVIDIA(GPU-0): DFP-4: connected
[     7.376] (--) NVIDIA(GPU-0): DFP-4: Internal TMDS
[     7.376] (--) NVIDIA(GPU-0): DFP-4: 330.0 MHz maximum pixel clock
[     7.376] (--) NVIDIA(GPU-0): 
[     7.407] (II) NVIDIA(0): Setting mode "NULL"
[     7.463] (II) NVIDIA(0): Setting mode "DVI-D-0: nvidia-auto-select @1024x768 +0+0 {ViewPortIn=1024x768, ViewPortOut=1024x768+0+0}"
[     7.566] (--) NVIDIA(GPU-0): CRT-0: disconnected
[     7.566] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[     7.566] (--) NVIDIA(GPU-0): 
[     7.568] (--) NVIDIA(GPU-0): DFP-0: disconnected
[     7.568] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[     7.568] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[     7.568] (--) NVIDIA(GPU-0): 
[     7.568] (--) NVIDIA(GPU-0): DFP-1: disconnected
[     7.568] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[     7.568] (--) NVIDIA(GPU-0): DFP-1: 330.0 MHz maximum pixel clock
[     7.568] (--) NVIDIA(GPU-0): 
[     7.568] (--) NVIDIA(GPU-0): DFP-2: disconnected
[     7.568] (--) NVIDIA(GPU-0): DFP-2: Internal DisplayPort
[     7.568] (--) NVIDIA(GPU-0): DFP-2: 960.0 MHz maximum pixel clock
[     7.568] (--) NVIDIA(GPU-0): 
[     7.569] (--) NVIDIA(GPU-0): DFP-3: disconnected
[     7.569] (--) NVIDIA(GPU-0): DFP-3: Internal TMDS
[     7.569] (--) NVIDIA(GPU-0): DFP-3: 330.0 MHz maximum pixel clock
[     7.569] (--) NVIDIA(GPU-0): 
[     7.598] (--) NVIDIA(GPU-0): DFP-4: connected
[     7.598] (--) NVIDIA(GPU-0): DFP-4: Internal TMDS
[     7.598] (--) NVIDIA(GPU-0): DFP-4: 330.0 MHz maximum pixel clock
[     7.598] (--) NVIDIA(GPU-0): 

Затем, еще немного спустя, около точки, где я вхожу в систему, он снова корректируется

[    21.754] (--) NVIDIA(GPU-0): CRT-0: disconnected
[    21.755] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[    21.755] (--) NVIDIA(GPU-0): 
[    21.757] (--) NVIDIA(GPU-0): DFP-0: disconnected
[    21.757] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[    21.757] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[    21.757] (--) NVIDIA(GPU-0): 
[    21.757] (--) NVIDIA(GPU-0): DFP-1: disconnected
[    21.757] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[    21.757] (--) NVIDIA(GPU-0): DFP-1: 330.0 MHz maximum pixel clock
[    21.757] (--) NVIDIA(GPU-0): 
[    21.757] (--) NVIDIA(GPU-0): DFP-2: disconnected
[    21.757] (--) NVIDIA(GPU-0): DFP-2: Internal DisplayPort
[    21.757] (--) NVIDIA(GPU-0): DFP-2: 960.0 MHz maximum pixel clock
[    21.757] (--) NVIDIA(GPU-0): 
[    21.757] (--) NVIDIA(GPU-0): DFP-3: disconnected
[    21.757] (--) NVIDIA(GPU-0): DFP-3: Internal TMDS
[    21.757] (--) NVIDIA(GPU-0): DFP-3: 330.0 MHz maximum pixel clock
[    21.757] (--) NVIDIA(GPU-0): 
[    21.787] (--) NVIDIA(GPU-0): DFP-4: connected
[    21.787] (--) NVIDIA(GPU-0): DFP-4: Internal TMDS
[    21.787] (--) NVIDIA(GPU-0): DFP-4: 330.0 MHz maximum pixel clock
[    21.787] (--) NVIDIA(GPU-0): 
[    21.935] (II) NVIDIA(0): Setting mode "DVI-D-0: 1920x1080 @1920x1080 +0+0 {ViewPortIn=1920x1080, ViewPortOut=1920x1080+0+0}"
[    22.028] (--) NVIDIA(GPU-0): CRT-0: disconnected
[    22.028] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[    22.028] (--) NVIDIA(GPU-0): 
[    22.030] (--) NVIDIA(GPU-0): DFP-0: disconnected
[    22.034] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[    22.034] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[    22.034] (--) NVIDIA(GPU-0): 
[    22.034] (--) NVIDIA(GPU-0): DFP-1: disconnected
[    22.034] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[    22.034] (--) NVIDIA(GPU-0): DFP-1: 330.0 MHz maximum pixel clock
[    22.034] (--) NVIDIA(GPU-0): 
[    22.034] (--) NVIDIA(GPU-0): DFP-2: disconnected
[    22.034] (--) NVIDIA(GPU-0): DFP-2: Internal DisplayPort
[    22.034] (--) NVIDIA(GPU-0): DFP-2: 960.0 MHz maximum pixel clock
[    22.034] (--) NVIDIA(GPU-0): 
[    22.035] (--) NVIDIA(GPU-0): DFP-3: disconnected
[    22.035] (--) NVIDIA(GPU-0): DFP-3: Internal TMDS
[    22.035] (--) NVIDIA(GPU-0): DFP-3: 330.0 MHz maximum pixel clock
[    22.035] (--) NVIDIA(GPU-0): 
[    22.064] (--) NVIDIA(GPU-0): DFP-4: connected
[    22.064] (--) NVIDIA(GPU-0): DFP-4: Internal TMDS
[    22.064] (--) NVIDIA(GPU-0): DFP-4: 330.0 MHz maximum pixel clock
[    22.064] (--) NVIDIA(GPU-0): 
[    22.067] (--) NVIDIA(GPU-0): CRT-0: disconnected
[    22.067] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
[    22.067] (--) NVIDIA(GPU-0): 
[    22.069] (--) NVIDIA(GPU-0): DFP-0: disconnected
[    22.069] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[    22.069] (--) NVIDIA(GPU-0): DFP-0: 330.0 MHz maximum pixel clock
[    22.069] (--) NVIDIA(GPU-0): 
[    22.069] (--) NVIDIA(GPU-0): DFP-1: disconnected
[    22.069] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
[    22.069] (--) NVIDIA(GPU-0): DFP-1: 330.0 MHz maximum pixel clock
[    22.069] (--) NVIDIA(GPU-0): 
[    22.069] (--) NVIDIA(GPU-0): DFP-2: disconnected
[    22.069] (--) NVIDIA(GPU-0): DFP-2: Internal DisplayPort
[    22.069] (--) NVIDIA(GPU-0): DFP-2: 960.0 MHz maximum pixel clock
[    22.069] (--) NVIDIA(GPU-0): 
[    22.069] (--) NVIDIA(GPU-0): DFP-3: disconnected
[    22.069] (--) NVIDIA(GPU-0): DFP-3: Internal TMDS
[    22.069] (--) NVIDIA(GPU-0): DFP-3: 330.0 MHz maximum pixel clock
[    22.069] (--) NVIDIA(GPU-0): 
[    22.099] (--) NVIDIA(GPU-0): DFP-4: connected
[    22.099] (--) NVIDIA(GPU-0): DFP-4: Internal TMDS
[    22.099] (--) NVIDIA(GPU-0): DFP-4: 330.0 MHz maximum pixel clock
[    22.099] (--) NVIDIA(GPU-0): 

Я не уверен, где находится конфигурация, которая вызывает nvidia-auto-select, или даже можно ли это настроить. Может кто-нибудь указать мне правильное направление?

ИЗМЕНЕНИЕ 1

Файл xorg.conf по запросу

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 361.42  (buildmeister@swio-display-x64-rhel04-13)  Tue Mar 22 18:36:23 PDT 2016

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 361.42  (buildmeister@swio-display-x64-rhel04-13)  Tue Mar 22 18:37:28 PDT 2016

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
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      "DFP-4"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 970"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-4"
    Option         "metamodes" "1920x1080 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    Modes      "1920x1080"
    EndSubSection
EndSection

У вас есть файл xorg.conf? Возможно, там есть неверные настройки, которые могут вызвать попытку установить разрешение, которое на самом деле не поддерживается.

Я тоже столкнулся с этой проблемой. Некоторые конфигурации рабочего окружения могут переопределить настройки xorg.conf и появиться как “nvidia-auto-select” в журнале. В моем случае KDE установил разрешение в ~/.local/share/kscreen/*

Вы можете подтвердить, что это сохранено в локальной конфигурации, создав и войдя в систему с новым пользователем. После этого просто установите разрешение экрана на какое-то нечеткое значение ширины/высоты и используйте grep для поиска этих чисел в ~/ чтобы найти, где спрятана конфигурация

Ответ или решение

Как предотвратить переключение на неправильное разрешение на экране входа в систему при использовании NVIDIA?

При запуске системы на базе Ubuntu многие пользователи сталкиваются с проблемами разрешения экрана, особенно когда речь идет о графических картах NVIDIA. В вашем случае, проблема заключается в том, что экран входа отображается в правильном разрешении, но при входе в систему происходит переключение на неправильное разрешение, которое затем исправляется автоматически. Я постараюсь предложить вам несколько шагов, которые могут помочь устранить эту проблему.

1. Изучение конфигурационного файла Xorg (xorg.conf)

Поскольку у вас уже есть файл конфигурации xorg.conf, важно убедиться, что в нем указаны правильные параметры для вашего монитора и графической карты.

# Откройте файл xorg.conf с помощью текстового редактора
sudo nano /etc/X11/xorg.conf

Проверьте следующие секции:

  • Section "Monitor": Убедитесь, что указанное вами разрешение (например, 1920×1080) поддерживается вашим монитором.
  • Section "Screen": Здесь вы можете попробовать добавить параметр:
Option "metamodes" "1920x1080 +0+0,  nvidia-auto-select +0+0"

Это может помочь указать системе использовать ваше желаемое разрешение по умолчанию.

2. Обновление драйверов NVIDIA

Важно, чтобы вы использовали последнюю версию драйверов NVIDIA. Для обновления драйверов выполните следующие команды:

sudo apt update
sudo apt install nvidia-driver-<latest_version>

Замените <latest_version> на актуальную версию драйвера, например, nvidia-driver-530. Перезагрузите систему после установки.

3. Настройка использования утилиты xrandr

Если проблема не решается с помощью xorg.conf, можно использовать утилиту xrandr для управления настройками экрана.

  1. Запустите xrandr в терминале, чтобы увидеть доступные разрешения:
xrandr
  1. Если ваше нужное разрешение отсутствует, добавьте его:
xrandr --newmode "1920x1080_60.00"  1920  2048  2248  2576  1080  1083  1088  1120 -hsync +vsync
xrandr --addmode DVI-D-0 "1920x1080_60.00"
  1. Затем установите его как разрешение по умолчанию:
xrandr --output DVI-D-0 --mode "1920x1080_60.00"

Не забудьте заменять DVI-D-0 на ваше текущее устройство.

4. Конфигурации рабочего стола

Некоторые графические оболочки, такие как KDE или GNOME, могут переопределять настройки разрешения, указанные в xorg.conf. Проверьте настройки вашего рабочего окружения:

  • Если используете KDE, проверьте каталог ~/.local/share/kscreen/, где могут храниться настройки разрешения.
  • Для GNOME попробуйте использовать утилиту gnome-tweaks, чтобы изменить разрешение.

5. Создание нового пользователя для тестирования

Чтобы исключить возможность неправильной конфигурации пользователя, создайте нового пользователя и проверьте, возникает ли проблема:

sudo adduser testuser

Войдите под новым пользователем и проверьте настройки разрешения.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...