GDM:修改桌面登录界面的分辨率

修改桌面登录界面的分辨率,而不修改用户的分辨率。比如,登录界面的分辨率是800*600,而用户登录后,分辨率还是用户自己设定的分辨率。

GDM(GNOME Display Manager)是专门管理图形登录界面的,修改它的分辨率即可。

方法1:修改gdm配置文件

修改/var/lib/gdm/.config/monitors.xml这个配置文件,可以改变登录界面的分辨率。
/var/lib/gdm/.config/monitors.xml这个文件默认是不存在的,我们可以通过用图形化的DISPLAY配置程序来生成一个。
进入桌面,System->Preference->Display,出现以下界面,点Apply。
gdm1
于是,用户的家目录会生成这个文件 ~/.config/monitors.xml。
将文件复制到GDM的配置目录中,并把所有者改为gdm。

# cp ~/.config/monitors.xml /var/lib/gdm/.config/monitors.xml
# chown gdm.gdm /var/lib/gdm/.config/monitors.xml

修改这个文件里面的分辨率。

# vim /var/lib/gdm/.config/monitors.xml

尝试修改为640x480.

<monitors version="1">
  <configuration>
      <clone>no</clone>
      <output name="default">
          <vendor>???</vendor>
          <product>0x0000</product>
          <serial>0x00000000</serial>
          <width>640</width>
          <height>480</height>
          <rate>60</rate>
          <x>0</x>
          <y>0</y>
          <rotation>normal</rotation>
          <reflect_x>no</reflect_x>
          <reflect_y>no</reflect_y>
          <primary>no</primary>
      </output>
  </configuration>
</monitors>     

重启图形,即可看到登录界面分辨率变成了640x480,而登录进去还是用户原来配置的分辨率。

gdm2

方法2:粗暴地改gdm启动脚本

查看支持的分辨率

# xrandr 
Screen 0: minimum 320 x 200, current 2966 x 900, maximum 8192 x 8192
LVDS-0 connected 1366x768+1600+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1366x768       60.0*+
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA-0 connected 1600x900+0+0 (normal left inverted right x axis y axis) 443mm x 249mm
   1600x900       60.0*+
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  

可以看到LVDS-0接口能支持1366x768,1024x768,800x600,640x480 这四个分辨率。

修改gdm启动脚本

# vim /etc/gdm/Init/Default

PATH="/usr/bin:$PATH"
OLD_IFS=$IFS

下面加上

# Set login screen to 800x600
xrandr --output LVDS-0 --mode 800x600

重启即可看见登录界面的分辨率变成了800*600.