當前位置: 首頁>>技術教程>>正文


每次重啟都會丟失 NVIDIA X 服務器設置

,

問題描述

我在 Z87 Gigabyte 主板和 dual-boot Windows 8.1 Pro 和 Ubuntu 12.04.3 LTS 上運行 GeForce GTX 770。除了 Ubuntu 中的視頻和 3D 性能外,該設置總體上運行平穩。我曾經遇到過臭名昭著的閃爍問題,並找到了解決方法。這與 NVidia 卡進入 low-power 模式有關,然後視頻和 3D 效果會出現撕裂和卡頓。修複方法是轉到 nvidia-settings 並將 power-mode 從 ‘Auto’ 更改為“Prefer Maximum Performance”。問題是這僅在我重新啟動之前有效。重新啟動後,設置被清除,問題仍然存在,所以我必須為當前會話再次手動設置。我嘗試了 gksu-ing 並設置它,但它沒有用。我試圖編輯 etc/X11/xorg.conf,但它是空的 – 該文件中有零行……我閱讀了所有相關文章,但主要是人們抱怨亮度被重置或 dual-monitor 配置,這些解決方案涉及一些對我沒有任何幫助的特定應用程序。

TL;DR: NVidia 設置在重新啟動後重置,並嘗試了我在 Internet 上可以找到的所有內容,但效果不佳。

如果有人知道在這種情況下該怎麽做,請分享!

謝謝!

編輯[1]:我做了一些進一步的挖掘,似乎沒有明顯或安全的解決方案。有些人嘗試手動設置性能級別,但報告它不安全並且可能會殺死 GPU。不過還是有希望的。我認為這可以通過 nvidia-settings 提供的 NVidia 配置文件選項來完成。問題是人們需要知道有問題的密鑰以及該密鑰接受的值。

I could have put a screenshot here, but I need rep => 10...

我找不到可能的鍵列表,也找不到任何鍵值……我猜不走運。

有人可以提供鏈接或列出一些有用的鏈接嗎?

謝謝!

編輯[2]:終於!感謝大家的幫助!我在 vegard torvundthis thread 的幫助下找到了解決方案。感謝 Ubuntu Google+ Community 的宣傳!

最佳答案

  1. 通過以下方式創建 xorg.conf 文件:

    sudo nvidia-xconfig
    
  2. 在 xorg.conf 文件中查找 Section “Device” 部分並在該部分中添加以下行:

    Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322"
    

保存並重新啟動您的機器。

PS。如果添加更多參數,請在 0x3322 後添加 ;

次佳答案

official user guide

“4. 自動加載設置

The NVIDIA X driver does not preserve values set with nvidia-settings
between runs of the X server (or even between logging in and logging
out of X, with xdm, gdm, or kdm).  This is intentional, because
different users may have different preferences, thus these settings
are stored on a per user basis in a configuration file stored in
the user's home directory.

The configuration file is named "~/.nvidia-settings-rc".  You can
specify a different configuration file name with the "--config"
commandline option.

After you have run nvidia-settings once and have generated a
configuration file, you can then run:

    nvidia-settings --load-config-only

at any time in the future to upload these settings to the X
server again.  For example, you might place the above command in
your ~/.xinitrc file so that your settings are applied automatically
when you log in to X.

Your .xinitrc file, which controls what X applications should
be started when you log into X (or startx), might look something
like this:

    nvidia-settings --load-config-only &
    xterm &
    evilwm

or:

    nvidia-settings --load-config-only &
    gnome-session

If you do not already have an ~/.xinitrc file, then chances are that
xinit is using a system-wide xinitrc file.  This system wide file
is typically here:

    /etc/X11/xinit/xinitrc

To use it, but also have nvidia-settings upload your settings,
you could create an ~/.xinitrc with the contents:

    nvidia-settings --load-config-only &
    . /etc/X11/xinit/xinitrc

System administrators may choose to place the nvidia-settings load
command directly in the system xinitrc script.

Please see the xinit(1) manpage for further details of configuring
your ~/.xinitrc file.

第三種答案

您可以做的是創建一個如下所示的腳本並在啟動時運行它。

#!/bin/bash
nvidia-settings --assign CurrentMetaMode=<display_settings>

您將 <display_settings> 替換為 display-settings。 display-settings 可能如下所示:

"DVI-D-0: nvidia-auto-select +0+0, DP-0.1: nvidia-auto-select +1920+0, DP-0.8: nvidia-auto-select +0+0, HDMI-0: nvidia-auto-select +1920+0" 

您可以從“X 配置文件”中獲取顯示設置。

您可以通過“啟動應用程序首選項”程序在啟動時運行它。

您可以通過終端中的 gnome-session-properties 啟動“啟動應用程序首選項”。

第四種答案

在 Linux Mint 18 Cinnamon 上,轉到名為 monitor 的小配置應用程序。當按下 “apply” 時,文件 ~/.config/monitors.xml 被保存,其用途與 xfce display.xml 相同 – 它保存所有這些設置,在 nvidia 中設置不是持久的。如果您碰巧在 NVIDIA 圖形設置麵板中配置了顯示布局,則必須嘗試更改某些內容(以觸發應用按鈕的可用性)。我這樣做並將上麵的 load-settings 添加到 xinitrc。

我將檢查屏幕鎖定激活後我的 window-reordering 問題現在是否消失了 All windows reordered to main monitor

第五種答案

我能夠在我的係統上解決這個問題:

  1. 導航到“nvidia-settings 配置”選項卡。

  2. 取消選中“在配置文件中包含 X 顯示名稱”

  3. 保存當前配置

事實證明設置正在加載,但顯示名稱(看起來正確)阻止它們被設置。這是在基本的雙顯示係統上。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/12638.html,未經允許,請勿轉載。