系统相关
首页 > 系统相关> > linux – xrandr:启动时找不到模式

linux – xrandr:启动时找不到模式

作者:互联网

我想在每次启动时配置笔记本电脑的2个外部屏幕.
因为我有一种码头站,我写了一个小脚本,检查我的笔记本电脑是否连接到扩展坞.

如果是,监视器应该由xrandr配置它们自己.这是我的脚本:

#!/bin/bash

export DISPLAY=:0
export XAUTHORITY=/home/$USER/.Xauthority

sleep 1

DOCKED=$(cat /sys/devices/platform/dock.2/docked)
case "$DOCKED" in
0)
xrandr --output DVI1 --off --output VIRTUAL1 --off --output VGA1 --off &> && xrandr --output LVDS1 --mode 1024x768 --pos 0x0 --rotate normal
;;
1)
xrandr --output VIRTUAL1 --off --output LVDS1 --off && xrandr --output DVI1 --mode 1366x768 --pos 1360x0 --rotate normal --output VGA1 --primary --mode 1360x768 --pos 0x0 --rotate normal
;;
esac

不幸的是xrand在启动时没有以正确的方式工作.它告诉我这个:

xrandr: cannot find mode 1360x768

我有点困惑,因为如果我在我的电脑已经运行时启动脚本它完美无瑕,并且没有错误报告!

所以我猜xrandr在启动时没有找到我的监视器,因此它不知道每个监视器的具体配置.

我该如何解决这个问题?

非常感谢帮助我!

解决方法:

首先添加所需的模式.

使用gtf / cvt和xrandr来做到这一点.

$cvt 1360 768 60
# 1360x768 59.80 Hz (CVT) hsync: 47.72 kHz; pclk: 84.75 MHz
Modeline "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
$gtf 1360 768 60 -x

  # 1360x768 @ 60.00 Hz (GTF) hsync: 47.70 kHz; pclk: 84.72 MHz
  Modeline "1360x768_60.00"  84.72  1360 1424 1568 1776  768 769 772 795  -HSync +Vsync

$xrandr --newmode "1360x768_60.00"  84.72  1360 1424 1568 1776  768 769 772 795  -HSync +Vsync
$xrandr --addmode VGA1 "1360x768_60.00"

标签:bash,linux,xrandr,arch-linux
来源: https://codeday.me/bug/20190815/1662090.html