XSF /如何使用xrandr

西里尔·布鲁莱布瓦
<kibi@debian.org>

目录

入门

什么是xrandr?

xrandr是与XRandR 扩展名交互的命令行工具[请参阅x.org, Wikipedia ],它允许对X服务器进行实时(重新)配置(即,无需重新启动):它提供模式(分辨率,刷新)的自动发现。速率等)以及动态配置输出(调整大小,旋转,移动等)的功能。

FIXME:各个驱动程序的状态?

对xorg.conf有什么后果?

从开始squeezexorg.conf完全删除配置文件应该可以很好地工作,但是如果无法解决问题,让我们记录一下可以从文件中删除的内容RandR

通过驱动程序自动检测模式,大多数情况下,配置文件(xorg.conf)中的几个配置选项变得无用。您可能要删除:

  • HorizSyncVertRefresh从该Monitor部分。

  • 本节Display小节中的模式Screen

  • ModeLine从本Monitor节开始。

也无需保留静态双头配置。一些建议,以获取一个小的xorg.conf

  • 降双重DeviceScreen/Monitor部分,需要单独的一个。

  • 从其余部分中 删除MonitorLayout选项和Screen行 Device

  • 放下ServerLayout部分。

  • 放下RightOf/LeftOf指示该节中剩余的ScreenServerLayout

 

基本的xrandr用法

一旦xorg.conf删除或更新了配置文件(),默认情况下启动服务器应启用一些输出。它们的左上角将在图像的同一部分,但是它们的模式可能会有所不同。

可以通过配置所有输出xrandr。要查看可用的输出,只需运行xrandr

$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1280x800+0+0 inverted X and Y axis (normal left inverted right x axis y axis) 261mm x 163mm
1280x800 59.8*+
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
DVI1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)

评论:

  • 我们看到4个输出:VGA1LVDS1DVI1TV1

  • 仅连接了内部面板(LVDS1),它支持60 Hz的4种模式,56 Hz的1种模式。

  • 标有星号(*)的模式是当前模式。

  • 标有加号(+)的是首选。大多数监视器向驱动程序报告首选模式。服务器/驱动程序通常默认情况下会选择它。

FIXME:提及输出名称约定?

处理VGA1输出属性时,应使用:

$ xrandr --output VGA1 <options>

动态添加/删除头

过去,在插入新显示器时不得不重新启动X的日子已经一去不复返了。使用RandR1.2,您可以随时插入/拔出监视器。运行以下行将查询所有输出,并以其默认模式启用它们:

$ xrandr --auto

您还可以使用以下命令禁用一个输出:

$ xrandr --output LVDS1 --off

对于某些不能很好地支持多个输出的错误应用程序,这可能很有用。另外,由于CRTC的限制(请参阅下面的“注意事项”部分),通常需要先禁用一个输出,然后再启用另一个输出,因为大多数硬件同时仅支持2个。

改变模式

使用上面的xrandr输出,您可以将LVDS1模式更改为 1024x768使用:

$ xrandr --output LVDS1 --mode 1024x768

刷新率也可以同时或独立更改:

$ xrandr --output LVDS1 --mode 1024x768 --rate 75
$ xrandr --output LVDS1 --rate 75

要返回默认模式:

$ xrandr --output LVDS1 --auto
 

将输出放置在虚拟屏幕中

非KMS设置的一些配置:

让我们看一下最大虚拟屏幕尺寸,4096x4096在此示例中可以看到 :

$ xrandr|head -1
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096

使用KMS(FIXME:链接到解释什么是KMS的页面)时,无需指定任何Virtual选项。如果使用DRI而没有KMS,则可能需要这样做。实际上,驱动程序通常会创建一个小尺寸的默认虚拟屏幕,例如1600x1200,以减少内存消耗。

如果计划使用显示不同区域的多个输出,则应在该部分的小节中xorg.conf添加Virtual一行以进行 配置。DisplayScreen

Section "Screen"

SubSection "Display"
Depth 24
Virtual 3000 2000
EndSubSection
EndSection

放置输出

使用以下选项放置输出: --right-of--left-of--above--below。例如,要将VGA1输出放置在内部面板(LVDS1)的右侧,请执行以下操作:

$ xrandr --output VGA1 --right-of LVDS1

请注意,硬件和内存限制可能会严重限制虚拟屏幕的大小,请参阅下面的“警告”部分。

 

添加新模式

在某些情况下,某些模式可能会丢失。例如,如果监视器未报告正确的EDID信息。或者,如果输出在启动时没有提供CRTC,因为另一个输出正在使用它,并且您同时禁用了它。

如果存在一种模式,则可以使用以下命令将其添加到一个输出中:

$ xrandr --addmode VGA1 800x600

如果该模式不存在,则可以首先通过传递模型来创建它:

$ xrandr --newmode <ModeLine>

您可以使用gtfcvt工具(xserver-xorg-core包装中随附)创建Modeline 。

XSF /如何使用xrandr的更多相关文章

  1. 使用命令xrandr设置当前系统的显示分辨率及显示的旋转脚本

    /*********************************************************************  * Author  : Samson  * Date   ...

  2. ubuntu 14.04 分辨率调整 -- xrandr命令

    问题描述: 自己在安装ubuntu-kylin 14.04 TLS系统成功后,在调整分辨率的时候(系统设置--显示)发现分辨率的选项只有1024x768以及800x600两个选项,而台式机的外接显示屏 ...

  3. 利用 xrandr 命令修改屏幕分辨率

    问题背景 电脑外接着一个 23' 的显示器,分辨率为 1920*1080. 操作系统:ubuntu 14.04 今天,通过 Setting->Displays 中选择外接屏的分辨率时,发现最大只 ...

  4. xrandr: 命令行修改分辨率工具

    常用功能举例 查看支持的分辨率 xrandr -q 将分辨率设为1024×768 xrandr -s 1024×768 恢复到默认分辨率 xrandr -s 0

  5. [X][xrandr][archlinux] 手动调整显示器分辨率

    有一些时候,电脑并不能正确的识别出显示器的最大分辨率,这有可能是软件的原因,硬件的原因,显示器的原因,VGA线的原因等其他原因. 我遇到的情况,是开机时候连着VGA的话,就可以正确识别.如果使用中间进 ...

  6. Linux下使用 xrandr 命令设置屏幕分辨率

    最近在Linux下修改屏幕分辨率的时候,发现了一个非常有用的命令:xrandr 使用这个命令,可以方便的设置您显示器的的分辨率.尤其是当你使用了一些需要或者会自动改动您屏幕分辨率的程序以后. 您可以使 ...

  7. xrandr

    ubuntu 外接显示器 xrandr常用命令(这里的VGA与LVDS分别换成第1步中的设备名,如VGA1.LVDS1): xrandr --output VGA --same-as LVDS --a ...

  8. Ubuntu: Linux下查看本机显示器分辨率(xrandr)

    版权声明:转载请注明出处 https://blog.csdn.net/JNingWei/article/details/75044598   Linux下查看本机显示器分辨率: $ xrandr Sc ...

  9. Linux --xrandr command

    Source: https://www.x.org/archive/current/doc/man/man1/xrandr.1.xhtml https://blog.csdn.net/syh_486_ ...

随机推荐

  1. 第17 章 : 深入理解 etcd:etcd 性能优化实践

    深入理解 etcd:etcd 性能优化实践 本文将主要分享以下五方面的内容: etcd 前节课程回顾复习: 理解 etcd 性能: etcd 性能优化 -server 端: etcd 性能优化 -cl ...

  2. django-数据库的增删改查操作

    django-数据库的增删改查操作 1.添加用户记录 def login(request): 增加用户记录 使用save()方法来增加记录 username = UserInfo(username=' ...

  3. 一个诡异的MySQL查询超时问题,居然隐藏着存在了两年的BUG

    这一周线上碰到一个诡异的BUG. 线上有个定时任务,这个任务需要查询一个表几天范围内的一些数据做一些处理,每隔十分钟执行一次,直至成功. 通过日志发现,从凌晨5:26分开始到5:56任务执行了三次,三 ...

  4. Java 在Excel中添加水印(单一水印、平铺水印)

    在Excel中没有直接添加水印的功能,但依旧可以通过一定方式来实现类似水印效果.本文通过Java程序代码介绍具体实现方法.可添加单一水印效果,即水印是以单个文本字样来呈现:也可添加多个平铺水印效果,即 ...

  5. 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之裸金属-20

    自动化kolla-ansible部署ubuntu20.04+openstack-victoria之裸金属-20 欢迎加QQ群:1026880196 进行交流学习 近期我发现网上有人转载或者复制原创博客 ...

  6. Java常用工具+类库合集

    1 常用工具 JVisual vm:可以直接通过软件包下载,支持本地以及远程JVM监控 JMH:Java Microbenchmark Harness,测试基准组件,精度可达纳秒级 JITWatch: ...

  7. ORM 创新解放劳动力 -SqlSugar 新功能介绍

    介绍 SqlSugar是一款 老牌 .NET 开源ORM框架,由果糖大数据科技团队维护和更新 ,Github star数仅次于EF 和 Dapper 优点: 简单易用.功能齐全.高性能.轻量级.服务齐 ...

  8. 工厂模式之简单工厂模式,head first设计模式

    简单设计模式比较简单,15分钟的时间,跟着我做,十几分钟学会简单设计模式,开始吧: 1.使用new实例化一个对象时,你肯定知道这种代码缺少弹性,绑定着具体的类会导致代码更加脆弱,简单工厂模式就是针对接 ...

  9. 8.switch语句

    switch语句语法 switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可选 //你可以有任意数 ...

  10. DexHunter在ART虚拟机模式下的脱壳原理分析

    本文博客地址: http://blog.csdn.net/qq1084283172/article/details/78494620 DexHunter脱壳工具在Dalvik虚拟机模式下的脱壳原理分析 ...