如何在重启后永久保存显示器的 xrandr 配置?

如何在重启后永久保存显示器的 xrandr 配置?

我有一台显示器。硬件可以支持 1024x768 85Hz。但不知道为什么我的 lubuntu 系统无法检测到上述分辨率的最高刷新率。

按照我做了以下事情:

abhishek@abhishek:~$ cvt 1024 768 85
# 1024x768 84.89 Hz (CVT 0.79M3) hsync: 68.68 kHz; pclk: 94.50 MHz
Modeline "1024x768_85.00"   94.50  1024 1096 1200 1376  768 771 775 809 -hsync +vsync
abhishek@abhishek:~$ xrandr --newmode "1024x768_85.00" 94.50  1024 1096 1200 1376  768 771 775 809 -hsync +vsync
abhishek@abhishek:~$ xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/"
VGA-1
abhishek@abhishek:~$ xrandr --addmode VGA-1 1024x768_85.00
abhishek@abhishek:~$ xrandr
Screen 0: minimum 8 x 8, current 1024 x 768, maximum 32767 x 32767
VGA1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00* 
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94  
   1024x768_85.00  84.89  
DVI-D-1 disconnected (normal left inverted right x axis y axis)
abhishek@abhishek:~$ 

因此,通过上述操作,我可以暂时添加新频率。重启后,此项工作不会被记住。

正如所说,我尝试创建一个 .xprofile 文件,如下所示:

abhishek@abhishek:~$
abhishek@abhishek:~$ vi ~/.xprofile

我写了内容...

这是输出:

abhishek@abhishek:~$ cat .xprofile
#!/bin/sh
randr --newmode "1024x768_85.00" 94.50  1024 1096 1200 1376  768 771 775 809 -hsync +vsync
xrandr --addmode VGA-1 1024x768_85.00
abhishek@abhishek:~$ 

正如这里所说的永久添加未检测到的分辨率...

我也使 .xprofile 文件可执行,但是问题是重启后配置丢失了......

我不明白哪里出了问题...有人能帮帮我吗?

答案1

这就是我找到解决方案的方法。

我得到了帮助本文

  1. 我们需要生成一个模式行

我们进入终端并输入“gtf xyr”,其中 x 是水平分辨率,y 是垂直分辨率,r 是刷新率(这在很大程度上无关紧要,因为 LCD 是常态)。例如,我的是:

gtf 1024 768 85

执行完命令后,你会看到类似这样的内容

abhishek@abhishek:~$ gtf 1024 768 85

  # 1024x768 @ 85.00 Hz (GTF) hsync: 68.60 kHz; pclk: 94.39 MHz
  Modeline "1024x768_85.00"  94.39  1024 1088 1200 1376  768 769 772 807  -HSync +Vsync

abhishek@abhishek:~$

我们只对后半部分感兴趣,因此请记下从 modeline 开始的所有内容。

  1. 我们需要找到显示接口名称

在终端类型中:xrandr 这将给你类似以下内容的信息:

Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
VGA-1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*  
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94  
DVI-D-1 disconnected (normal left inverted right x axis y axis)
abhishek@abhishek:~$

显示接口名称是“已连接”之前的位,因此在本例中为“VGA-1”。记下您的名称。

  1. 创建 10-monitor.conf

为了创建我们闪亮的新分辨率,我们需要/usr/share/X11/xorg.conf.d/10-monitor.conf 在终端运行中创建:

sudo vi /usr/share/X11/xorg.conf.d/10-monitor.conf

这将打开一个空白文本文件,您需要将以下内容粘贴到其中:

Section "Monitor"
  Identifier "Monitor0"
  <INSERT MODELINE HERE>
EndSection
Section "Screen"
  Identifier "Screen0"
  Device "<INSERT DEVICE HERE>"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    Depth 24
    Modes "<INSERT MODENAME HERE>"
  EndSubSection
EndSection

模式名称是引号中的位(因此在我们之前的示例中为“1024x768_85”)。您可以添加 xandr 显示的列表中已存在的其他分辨率,只需将它们放在引号中并将它们添加到模式行的末尾即可。

因此,作为参考,我的看起来像这样:

Section "Monitor"
  Identifier "Monitor0"
  Modeline "1024x768_85.00"  94.39  1024 1088 1200 1376  768 769 772 807  -HSync +Vsync
EndSection
Section "Screen"
  Identifier "Screen0"
  Device "VGA-1"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    Depth 24
    Modes "1024x768_85.00"
  EndSubSection
EndSection

您已经完成了!

将 10-monitor.conf 保存在 /usr/share/X11/xorg.conf.d/ 中后,重新启动计算机,您应该可以看到全新的分辨率并将其设置为默认值。


如果重启时出现黑屏,不要惊慌,这可能意味着输入错误或其他语法错误。在计算机开启时,按 ctrl+alt+F1 进入终端并运行:

sudo rm /usr/share/X11/xorg.conf.d/10-monitor.conf

然后重启,你就会恢复默认设置!希望这能为大家节省一些时间和精力!


这确实对我有用...我将我的设置放在这里,以便以后可以参考...并且如果链接中断,那么我的答案中应该有该方法的副本,完整的解释可以在源文章中找到...

相关内容