问题背景

  • 电脑外接着一个 23‘ 的显示器,分辨率为 1920*1080

  • 操作系统:ubuntu 14.04

今天,通过 Setting->Displays 中选择外接屏的分辨率时,发现最大只有 1024×768,并且外接屏显示 “Unknown Displays”,日了狗了。。。


解决方案

解决办法主要是给这个 “Unknown Displays” 设置一个 1920*1080 的选项,下面借助 xrandr 命令来实现。


先查看两个屏幕支持的分辨率情况

在终端输入 xrandr

$ xrandr
Screen 0: minimum 320 x 200, current 3286 x 1080, maximum 32767 x 32767
eDP1 connected primary 1366x768+0+312 (normal left inverted right x axis y axis) 309mm x 173mm
1366x768      60.1*+
1360x768      59.8    60.0
1024x768      60.0
800x600        60.3    56.2
640x480        59.9
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP2 connected 1024x768 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768      60.0*
800x600        60.3    56.2
848x480        60.0
640x480        59.9
HDMI2 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

注:

  • 上面显示了两个屏幕分辨率选项,后面标示 * 即为屏幕当前分辨率
  • 这里显示好几个接口:eDP1, DP1, HDMI1, DP2, HDMI2, VIRTUAL1,但是只有 eDP1 和 DP2 有连接,并且 DP2 对应我们外接屏(这个值后面会用到!)

利用 cvt 新建一个 modeline

代码如下:

$ cvt 1920 1080
  • 1
  • 1

然后屏幕上会返回两行内容,赋值第二行中 ‘Modeline’ 后面的所有内容,并接到下面 xrandr --newmode 后面:

$ xrandr --newmode "1920x1080_60.00" 173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
$ xrandr --addmode DVI1 "1920x1080_60.00"
$ xrandr -s 1920x1080 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

其中 ”DP2“ 即上面展示的外接端口,不用的接口这个名字可能不同,比如有的会是 VGA1,以上面 xrandr 的显示结果为准。

之后,再进入 Setting->Displays, 发现那个 “Unknown Display” 的分辨率中,有了 “1920x1080” 这个选项,选中它,并 Apply 即可。

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc104"
Option "XkbLayout" "us"
EndSection

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
EndSection

Section "Device"
Identifier "Configured Video Device"
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 30.0 - 83.0
VertRefresh 50.0 - 75.0
Option "DPMS"
Modeline "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
Modeline "1600x1228_60.00"  128.00  1600 1632 1664 1728  1200 1203 1207 1235 -hsync +vsync
Modeline "1400x1050_60.00"  121.75  1400 1488 1632 1864  1050 1053 1057 1089 -hsync +vsync
Modeline "1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798 -hsync +vsync

EndSection

Section "Screen"
Identifier "Default Screen"
Monitor "Monitor0"
SubSection "Display"

Modes "1600x1200" "1600x1228" "1400x1050" "1024x768" 
EndSubSection
EndSection

利用 xrandr 命令修改屏幕分辨率的更多相关文章

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

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

  2. ubuntu20.04 利用xrandr命令修改多显示器分辨率

    问题描述 笔记本是ThinkPad X1 Extreme Gen3 4K屏,外接了一个27寸的1080P显示器.目标是让两个显示器的"显示效果"分辨率能一致,就如winwods和m ...

  3. ubuntu16.04 通过命令,修改屏幕分辨率

    ubuntu16.04 通过命令,修改屏幕分辨率 l185979505 2016-10-19 08:15:54 20293 收藏 5展开第一次写博客,,,好激动,,首先通过命令: xrandr 查看可 ...

  4. Linux修改屏幕分辨率至2K

    使用命令:cvt,与 xrandr 使用cvt命令查看分辨率配置: Modeline后边分别是 modeName 以及 详细的配置 linklee@linklee-270E5G-270E5U:~$ c ...

  5. centos 虚拟机中修改屏幕分辨率

    1.$ vi /boot/grub/grub.conf(路径可能会不一样,也可以是 /etc/grub.conf),打开grub.conf文件 2.我们修改分辨率,需要在kernel那行加入 vga= ...

  6. linux下使用convert命令修改图片分辨率【转】

    本文转载自:http://blog.csdn.net/mybelief321/article/details/9969949 Convert的resize子命令应该是在ImageMagick中使用较多 ...

  7. [OS] 修改屏幕分辨率(用Remote Desktop Connection 或者 用工具:Remote Desktop Connection Manager)

    用Remote Desktop Connection Remote Desktop Connection Manager

  8. Ubuntu 更改屏幕分辨率

    安装完Ubuntu后发现分辨率不合适,平时习惯了看小一点的文字,所以搜了一下修改屏幕分辨率的命令,具体操作如下: 1.先用 xrandr 命令查看一下当前系统支持的分辨率 wayde@wayde-Al ...

  9. C#对屏幕分辨率的操作

    winform应用程序 1.新建Resolution.cs类 using System; using System.ComponentModel; using System.Windows.Forms ...

随机推荐

  1. HH的项链

    传送门 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越 ...

  2. 自己做的notepad++ FTP同步插件

    平时修改FTP上的文件的时候,想先备份一下,没有合适的方法,尝试做了一个小插件. 差点忘了,下载地址   https://pan.baidu.com/s/1htdtT9E 下面是   具体的说明 Fa ...

  3. 浅谈ASP.NET配置文件加密

    在刚刚完成的一个ASP.NET项目中,遇到了这么一个问题,项目部署到生产环境中时,领导要求项目中的配置文件(如web.config,app.config)中不能出现敏感字符,如:数据库连接,等等. 第 ...

  4. java之过滤器Filter (应用场景)

    filter在开发中的常见应用:     * 1.filter可以目标资源执行之前,进行权限检查,检查用户有无权限,如有权限则放行,如没有,则拒绝访问     * 2.filter可以放行之前,对re ...

  5. python3,进程间的通信

    本文来源于python 3.5版本的官方文档 multiprocessing模块为进程间通信提供了两种方法: 1.进程队列queue The Queue class is a near clone o ...

  6. python的logging模块

    python提供了一个日志处理的模块,那就是logging 导入logging模块使用以下命令: import logging logging模块的用法: 1.简单的将日志打印到屏幕上 import ...

  7. web前端性能优化问题

    常用的几大优化解决: 页面内容的优化 减少http请求 途径: 1>启用http/2--越来越多的浏览器都开始支持 HTTP/2.HTTP/2 为同一服务器的并发连接问题带来了很多好处.换句话说 ...

  8. OI黑科技:读入优化

    利用getchar()函数加速读入. Q:读入优化是什么? A :更加快速地读入一些较大的数字. Q:scanf不是已经够快了吗? A:Naive,scanf还是不!够!快! Q:那怎么办呢? A:我 ...

  9. Validate Model State automatically in ASP.NET Core 2.0

    if (!ModelState.IsValid) { //TODO 模型验证失败需要做的事情 } 上面的代码不管是在传统的ASP.NET还是新一代ASP.NET Core中都是为了验证模型的状态是否合 ...

  10. opencv-python与c++ opencv中的一些区别和基础的知识

    使用opencv-python一段时间了,因为之前没有大量接触过c++下的opencv,在网上看c++的一些程序想改成python遇到了不少坑,正好在这里总结一下. 1.opencv 中x,y,hei ...