每次重新启动时NVIDIA X服务器设置都会丢失


28

我在Z87技嘉主板上运行GeForce GTX 770,并双启动Windows 8.1 Pro和Ubuntu 12.04.3 LTS。除了涉及Ubuntu中的视频和3D性能外,该设置总体上运行平稳。我曾经臭名昭著的闪烁问题,并找到一种解决方法。它与NVidia卡进入低功耗模式有关,然后视频和3D效果会遭受撕裂和卡结。解决方法是转到nvidia设置,并将电源模式从“自动”更改为“首选最大性能”。问题是这只有在我重新启动后才有效。重新启动后,设置已清除,问题仍然存在,因此我必须为当前会话再次手动设置它。我尝试了gksu-ing并进行了设置,但没有成功。我尝试编辑etc / X11 / xorg.conf,但它为空-该文件中有零行。

TL; DR:重新启动后会重置NVidia设置,并尝试了我在Internet上找不到的所有内容。

如果有人知道在这种情况下该怎么办,请分享!

谢谢!

编辑[1]:我做了进一步的挖掘,似乎没有明显或安全的解决方案。有些人试图手动设置性能级别,但报告说这是不安全的,可能会杀死GPU。虽然仍然有希望。我认为可以通过nvidia-settings提供的NVidia配置文件选项来完成。问题在于,人们需要知道所讨论的密钥以及该密钥接受的值。

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

我找不到可能的键的列表,也找不到任何键的值……我想这没有运气。

有人可以提供链接或列出一些有用的链接吗?

谢谢!

编辑[2]:最后!感谢大家的帮助!我在vegard torvund该线程的帮助下找到了解决方案。并感谢Ubuntu Google+社区的传播!

Answers:


17
  1. 通过以下方式创建xorg.conf文件:

    sudo nvidia-xconfig
    
  2. 在xorg.conf文件中查找“设备”部分,然后在该部分中添加以下行:

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

保存并重新启动计算机。

PS。如果添加更多参数,请;在0x3322之后添加


1
谢谢!那行得通,但只有Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefault=0x2; PowerMizerDefaultAC=0x2"这里
kgizdov

运行sudo nvidia-xconfig无法打开任何文件,并且给我这个错误:Using X configuration file: "/etc/X11/xorg.conf". Backed up file '/etc/X11/xorg.conf' as '/etc/X11/xorg.conf.backup' New X configuration file written to '/etc/X11/xorg.conf'
Edward Torvalds

1
@edwardtorvalds我认为这只会将内容保存到xorg.cong。您仍然必须做sudo gedit /etc/X11/xorg.conf并添加提供的行
ubuntico

@kgizdov在我的案例中提供的帮助行。不必添加任何额外的内容。
ubuntico

1
您还需要在Ubuntu的显示部分中更改监视器设置askubuntu.com/a/377169/13207
ubuntico

10

来自官方用户指南

“ 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.


想了很多,但我想在配置文件中设置配置文件。无论如何,我找到了一个更好的解决方案。谢谢
kgizdov

4

在Linux Mint 18 Cinnamon上,转到名为Monitors的小配置应用程序。当按下“应用”时,将保存〜/ .config / monitors.xml文件,该文件的作用与xfce display.xml相同-它保存所有设置,而在nvidia中这些设置不是永久的。如果您碰巧在NVIDIA图形设置面板中配置了显示布局,则必须四处更改(以触发“应用”按钮的可用性)。我这样做并将上面的负载设置添加到xinitrc中。

我将检查激活屏幕锁定后的窗口重新排序问题现在是否消失了,所有窗口都已重新排序到主监视器


2

我能够在系统上解决此问题:

  1. 导航到“ nvidia设置配置”选项卡。
  2. 取消选中 “在配置文件中包括X显示名称”
  3. 保存当前配置

事实证明,正在加载设置,但是显示名称(看起来正确)阻止了它们的设置。这是在基本的双显示系统上。


在此处输入图片说明


1
+1跳舞1、2、3
WinEunuuchs2Unix

2

您可以做的是创建一个如下所示的脚本,并在启动时运行它。

#!/bin/bash
nvidia-settings --assign CurrentMetaMode=<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在终端中通过启动“启动应用程序首选项” 。


+1。虽然其他解决方案对我不起作用,但我尝试了此选项。这不是针对主要问题的真正解决方案,而是一个不错的解决方法!谢谢!
mhellmeier

0

系统在重新启动时不会重写参数。实际上nvidia-settings就是这样做的。打开一个终端,并使用以下命令编辑nvidia-settings中的“ Exec =“行:

"optirun /usr/bin/nvidia-settings -c :8 --config=~/.nvidia-settings-rc"

如果您使用大黄蜂,或者不使用大黄蜂,则不带引号,该命令可能是:

"/usr/bin/nvidia-settings --config=~/.nvidia-settings-rc".

同样,在取消保存设置之前:"Include X Display Names in the Config File". 系统将您的设置从一个会话转移到另一个会话,但就我而言(Ubuntu Gnome 14.04.1 amd64),我对vdpau和prime存在一些错误。考虑到我不使用nvidia-prime,它们可能是正常的。这些错误也可能使nvidia设置覆盖设置。


0

我正在使用Ubuntu 12.04,并且正在尝试使用我的视频卡,并告诉您在重新启动后我可能遇到的类似问题,我的nvidia设置无法应用,实际上我的xorg.conf文件也为空!但是所有这些都是在我降级nvidia驱动程序时发生的,因此在解决所有这些问题之后,我在Terminal中运行了一个简单命令:

sudo apt-get --reinstall nvidia-settings && sudo apt-get install nvidia-settings
gksudo nvidia-settings

只有我不告诉您是否在重新安装后是否重新启动了系统,只是不记得了,但是在此过程之后,我一切正常。我可以访问我的nvidia设置并在其中应用任何东西,例如最大化器,等等,由于我的硬件,它也用完整的行替换了我的xorg.conf文件,甚至在删除或丢失它时也会重新创建它。但是,我所做的所有事情都需要我自担风险,也许这取决于硬件。


-1

Alt + F2并在命令上键入gksu nvidia-settings Save X Configuration /etc/X11/xorg.conf


尝试了一下,不起作用...终端不是Ctrl + Alt + T吗?
kgizdov

2
为什么要下票?这可行。首先,您需要发出命令sudo nvidia-xconfig,然后再使用sudo打开nvidia设置。然后设置您想要的内容,保存到xorg。它WILL工作。
Apache

4
是的,但是sudo nvidia-xconfig他的回答中没有提到命令...
kgizdov

-1

我找到了Linux Mint 17.2的解决方案。您必须编辑文件/home/$user/.config/xfce4/xfce-perchannel-xml/displays.xml

您将在其中看到显示,并且可以在其中设置它们的X和Y轴。只需调整它们,它将在每次重新启动时保持不变。


-1

对于Linux Mint 18.2菜单>管理> x服务器设置。进行所需的所有更改。然后菜单>首选项>显示。按APPLY按钮。它为我工作。华硕F1A75 V-Pro与EVGA GeForce GTX 950。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.