如何使 nvidia-settings 工具中的更改持久化

如何使 nvidia-settings 工具中的更改持久化

我想禁用我的 nvidia 显卡的垂直同步(在 nvidia 设置中称为“同步到 VBlank”)。

但只有启动 nvidia-settings 工具,配置才会生效。重新启动系统后,VSync 再次启用,我必须再次启动程序。

我尝试导出并将xorg.conf其放入/etc/X11/但没有成功。

所以我的问题是如何才能使 nvidia-settings 工具中的更改持久化?

答案1

查看自述文件有时确实有帮助:)

此行为的目的是让不同的用户有机会拥有自己的设置。

简而言之,nvidia-settings 配置文件存储在其中,~/.nvidia-settings-rc并且可以通过nvidia-settings --load-config-only在启动时调用来执行。

有关更多详细信息,请参阅自述文件的相关部分:

4)自动加载设置

NVIDIA X 驱动程序不会在 X 服务器运行之间保留使用 nvidia-settings 设置的值(甚至在使用 xdm、gdm 或 kdm 登录和注销 X 之间)。这是故意的,因为不同的用户可能有不同的偏好,因此这些设置基于每个用户存储在用户主目录中存储的配置文件中。

配置文件名为“~/.nvidia-settings-rc”。您可以使用“--config”命令行选项指定不同的配置文件名。

运行 nvidia-settings 一次并生成配置文件后,您可以运行:

nvidia-settings --load-config-only

将来随时可以再次将这些设置上传到 X 服务器。例如,您可以将上述命令放在 ~/.xinitrc 文件中,以便在登录 X 时自动应用您的设置。

您的 .xinitrc 文件控制当您登录 X(或 startx)时应启动哪些 X 应用程序,可能如下所示:

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

或者:

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

如果您还没有 ~/.xinitrc 文件,那么 xinit 很可能正在使用系统范围的 xinitrc 文件。该系统范围的文件通常位于此处:

/etc/X11/xinit/xinitrc

要使用它,而且还要让 nvidia-settings 上传您的设置,您可以创建一个包含以下内容的 ~/.xinitrc :

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

系统管理员可以选择将 nvidia-settings load 命令直接放在系统 xinitrc 脚本中。

有关配置 ~/.xinitrc 文件的更多详细信息,请参阅 xinit(1) 联机帮助页。

答案2

作为之前答案的补充,nvidia-settings 仅在配置文件中记录与 X 屏幕相关的属性。还有一些附加设置可以应用于其他组件;这些都没有保存。

如果你看一下,配置文件中的所有属性都以{host}:0.0.其他可以设置的属性有GPU相关等。

例如,我使用连接到 NVidia 卡的 HDTV,需要重置过扫描补偿(以减小显示的屏幕尺寸以适合物理屏幕)。这可以通过 GUI 进行调整,但不会存储在配置文件中。从命令行,命令是:

nvidia-settings --assign :0[gpu:0]/OverscanCompensation[DFP-1]=80

请注意,属性名称包含 GPU 规范。

幸运的是,SyncToVBlank它在配置文件中,因此只需加载它就可以为您设置它。如果执行该命令,nvidia-settings --query all它将列出所有属性以及应用的目标。

答案3

我使用 dconf 编辑器将 Sync 的值设置为 VBlank

相关内容