在Windows下使用Win+P键或者定制屏幕选项,可以让自己用多个显示器工作或者外接投影仪进行演讲。在Linux下,Gnome与KDE这样的“重量级”桌面环境同样提供了类似的功能与操作方式。但是像我目前只装了X视窗系统与Sawfish窗口管理,这种“高级”的功能就没有了。不过,好在Linux下基本上什么事情都可以用命令操作来完成,所以上面的这些功能也都不在话下。方法是使用xrandr命令。
若不加任何参数直接运行该程序,则会显示当前电脑所连接各个显示器的情况。例如,我在家中台式机上运行它后显示如下:
Screen 0: minimum 8 x 8, current 3200 x 1080, maximum 8192 x 8192 DVI-I-0 disconnected (normal left inverted right x axis y axis) VGA-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm 1280x1024 60.0*+ 75.0 1024x768 75.0 70.1 60.0 800x600 75.0 72.2 60.3 56.2 640x480 75.0 72.8 59.9 DVI-I-1 connected 1920x1080+1280+0 (normal left inverted right x axis y axis) 509mm x 286mm 1920x1080 60.0*+ 1680x1050 60.0 1440x900 59.9 1280x1024 75.0 60.0 1280x960 60.0 1280x720 60.0 1024x768 75.0 70.1 60.0 800x600 75.0 72.2 60.3 56.2 640x480 75.0 72.8 59.9 HDMI-0 disconnected (normal left inverted right x axis y axis)
可以看到,目前已连接了两个显示器,VGA-0与DVI-I-1。其分辨率和屏幕位置分别为1280x1024+0+0与1920x1080+1280+0。很显然,VGA-0在DVI-I-1的左边。
接下来,就可以结合不同的选项,使用xrandr对显示器进行控制了。举例如下:
- 关闭指定显示器:xrandr --output VGA-0 --off
- 设置指定显示器的分辨率:xrandr --output DVI-I-1 --mode 1680x1050
- 让指定显示器自动选择分辨率与屏幕位置:xrandr --output DVI-I-1 --auto
- 使用扩展模式
- 设置指定显示器为主屏幕:xrandr --output DVI-I-1 --primary
- 设置多个显示器之间的相对位置:xrandr --output DVI-I-1 --left-of VGA-0
- 使用同步显示模式:xrandr --output DVI-I-1 --same-as VGA-0
以上不同选项是可以组合在一起一次完成设定的。例如:
xrandr --output VGA-0 --mode 1280x1024 --output DVI-I-1 --mode 1920x1080 --primary --right-of VGA-0