如何将当前的Xorg配置保存到Xorg.conf?

我的桌面PC上有这种情况/硬件:

  • Ubuntu Linux Oneiric 11.10(32位)
  • 监控华硕VW222s(22”)
  • 01:00.0 VGA兼容控制器:nVidia Corporation G92 [GeForce 8800 GS](rev a2)
  • NVIDIA驱动程序版本:280.13

我的实际配置没有问题,我可以按预期达到1680×1050。

那有什么问题呢?

好吧,我已经买了这个VGA开关: http : //www.mayflash.com/? Products / XBOXXBOX360 / VGA002.html ,能够与我的台式机和我的Xbox共享我的显示器,但如果我通过显示器连接显示器VGA适配器,显示器function无法识别,我只能有1024×600分辨率。

请注意这一点(这是重要的):

案例A)如果我用这个配置启动Ubuntu Monitor —> PC, 那么我断开电缆并连接它们以使用VG切换器,具有这样的配置:Monitor —-> VGA Switcher —-> PC,I可以有1680×1050的分辨率。

情况B)如果我直接使用VGA切换器启动Ubuntu:监视器—> VGA切换器—> PC,监视器function无法识别,我不能拥有1680×1050。

所以,因为我不想每次插拔 – 拔掉插头拔掉电缆(否则我就不会买VGA转接器……)我的想法是强制使用正确的xorg.conf配置,我可以避免在每次启动时检测Monitor并强制Xorg使用该配置。

问题是:

1)如何将当前的Xorg配置保存到xorg.conf文件中?

2)如何强制Xorg在每次启动时使用xorg.conf配置而不是每次都检测到它?

我希望我已经提供了帮助我所需的所有信息。 如果您需要了解更多,请告诉我。

谢谢。

ps:我已经尝试过使用nvidia-settings工具生成的xorg.conf,但正如你所看到的,它不包含任何关于当前1680×1050分辨率的内容http://pastebin.com/j8eBA83d

===更新#1 ===

我已经尝试过你建议我的方法,这是生成的xorg.conf

# nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 280.13 (buildd@rothera) Thu Aug 11 17:28:49 UTC 2011 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" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "Ancor Communications Inc VW222" HorizSync 31.0 - 81.0 VertRefresh 56.0 - 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce 8800 GS" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "TwinView" "0" Option "TwinViewXineramaInfoOrder" "CRT-0" Option "metamodes" "1680x1050_60 +0+0; nvidia-auto-select +0+0" SubSection "Display" Depth 24 EndSubSection EndSection 

如果我断开显示器一分钟并通过VGA切换器连接它,分辨率是完美的,显示器正确设置为1680×1050 @ 60Hz

看看这个截图:

华硕1680x1050 @ 60赫兹

这意味着它工作得很好。 那有什么问题呢? 问题是,如果我使用生成的xorg.conf重新启动Ubuntu,我会在字体显示丑陋且图像模糊之前粘贴。 屏幕的分辨率为1680×1050,但显示器正在使用另一种分辨率,我想它正在放大屏幕图像。

我将在更新#2中发布另一张图片,以便您可以用眼睛看到。

===更新#2 ===

我使用我发布的配置重新启动了Ubuntu ……它的工作原理! 可能是我之前生成它的时候,我没有在nvidia-settings工具中指定60 Hz,并且没有保存该值。 现在它正在运作。 现在我迫不及待想要我的XBox VGA线;)

你需要启动具有适当权限的nvidia配置工具(以root身份提升),如果你可以通过按下alt + F2或从命令行访问Dash运行命令模式来执行gksu nvidia-settings 。 从那里,您将能够使用nvidia设置面板保存到xorg.conf文件。

确保备份你现在正在使用的文件,这样如果你犯了错误并且你的界面不再工作,你可以用坏文件替换坏文件。 你可以手动备份或编辑文件,使用终端转到/etc/X11/ ,你会找到xorg.conf文件。 同样,您需要使用sudo激活的root权限,您可以执行sudo mv xorg.conf xorg.conf.backup1以在命令行中重命名该文件。 您可以这样做,但可以反转名称以将其命名。 您可以通过键入sudo pico xorg.conf来打开文件以使用vim或pico等程序进行编辑,并授予您在/etc/X11文件夹中的权限。

然后,您必须重新启动xserver,您可以通过注销帐户并重新登录,或在终端中输入unity ,这与unity --replace相同,应该重新启动X11。