如何通过终端将显示器设置重置为默认值?

Mar*_*lka 36 multiple-monitors kubuntu

关于 KDE (Kubuntu) 上的多个显示器,我有一个棘手的问题。我有一台笔记本电脑,在家里,它连接到两台显示器 - VGA 和 HDMI。这仅在内置笔记本电脑显示器被禁用时才有效(至少我被告知)。

问题是现在我把笔记本电脑拿走并在没有连接外部显示器的情况下启动它。系统记住内置显示器已禁用,因此即使它是唯一连接的显示器,它也会禁用它。显然,这使得笔记本电脑几乎无法使用。通过切换到终端Ctrl+ Alt+F#的作品,我可以登录; 甚至来宾工作正常。

问题是,由于我无法使用 GUI,我该如何(重新)通过终端设置帐户的监控设置?

谢谢

小智 18

该命令xrandr -s 0应该在终端中重置您的显示。可以在以下站点或man xrandr终端中找到更多信息。

https://linuxacademy.com/blog/linux/solution-resetting-your-screen-resolution-with-xrandr/

  • 是的,这有效。其他答案过于臃肿、复杂或效率低下。也可能有一些价值要注意,如果您遇到黑屏(并且看不到任何东西),您可以使用快捷键打开终端并盲目输入“xrandr -s 0”。这就是我所做的:) (4认同)

小智 18

每当我在 Lubuntu 笔记本电脑只显示在我的电视上时让它进入睡眠状态并在拔下它后唤醒它时,我最终会出现黑屏,因为分配了错误的分辨率。所以和你一样的问题,我需要从我可以使用 Ctrl-alt-F1 到达的 TTY1 虚拟终端设置分辨率,但 xrandr 似乎不起作用。在找到解决方案之前,我搜索了谷歌搜索结果的页面,所以我想我会分享。

关键是 xrandr 显然只适用于当前聚焦的显示器。因此,您必须在 xrandr 命令之前链接一个 sleep 命令,以便您有时间使用 Ctlr-alt-F7 切换回 X 服务器,以便在那里执行命令。否则,您会收到类似xrandr: Configure crtc 0 failed.

  1. 使用 Ctrl-alt-F1 打开虚拟终端并登录

要获取已连接屏幕的名称(并假设您的 X 服务器正在运行:0):

  1. $xrandr -d :0

要修改显示设置:

  1. $sleep 5; xrandr --output LVDS1 --auto -d :0

将 LVDS1 替换为您要修改的输出,并将 --auto 替换为您要使用的任何 xrandr 参数。

  1. 在您在上面的命令中设置的睡眠延迟结束之前,使用 Ctrl-alt-F7 切换到 X 服务器。

必须有更好的方法来做到这一点。但它有效。

解决方案的原始来源:http : //www.lgqyc.com/server-14-04-3-lts-display-orientation/

查看此评论以了解我的解决方案的可能改进(未经本人测试)。

  • 事实证明,有一种更好的方法可以做到这一点:`chvt 7; xrandr --output LVDS1 --auto -d :0`。chvt 7 为您切换到 VT7,因此您无需休眠/Ctrl-Alt-F7。在 `chvt` 和 `xrandr` 调用之间可能需要一个 `sleep 5`,但即便如此,它也可以节省手动按键操作。 (6认同)

don*_*oey 9

好问题。回答起来有点棘手,但可以尝试一下。

基本答案

X11 中实际上包含了一些重置的可能性。您可以在 找到它/etc/X11/Xreset。您可以使用 Xreset 目录 ( Xreset.d) 粘贴在用户注销时自动运行的脚本。自述文件:

# Scripts in this directory are executed as root when a user log out from
# a display manager using /etc/X11/Xreset.
# The username of the user logging out is provided in the $USER environment
# variable.
Run Code Online (Sandbox Code Playgroud)

因此,您可以 a) 在其中添加一个重置脚本,/etc/X11/Xreset.d并且 b) 制作一个附加到启动器的脚本,用于设置您的双外部显示器。因此,您将注销,一切都会恢复正常,您将登录到您的笔记本电脑,点击显示器的启动器并享受生活。

更多信息

  1. 您可能想要查看sudo dpkg-reconfigure -phigh xserver-xorg重置 xserver 或(可能更好地查看评论中 Mik 建议的答案)。

  2. 一个 SuSE 人写了一篇关于 X的好文章

  3. 在解决bug报告有人指出:

    管理员可以在 /etc/X11/Xreset.d/ 中删除脚本以在用户注销后运行。

  4. 这是文件的内容:

你可以在你自己的系统上找到它。

#!/bin/sh
#
# /etc/X11/Xreset
#
# global Xreset file -- for use by display managers
 
# $Id: Xsession 967 2005-12-27 07:20:55Z dnusinow $

set -e
 
PROGNAME=Xreset
SYSSESSIONDIR=/etc/X11/Xreset.d
 
if [ ! -d "$SYSSESSIONDIR" ]; then
  # Nothing to do, exiting
  exit 0
fi

# use run-parts to source every file in the session directory; we source
# instead of executing so that the variables and functions defined above
# are available to the scripts, and so that they can pass variables to each
# other
SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
if [ -n "$SESSIONFILES" ]; then
  set +e
  for SESSIONFILE in $SESSIONFILES; do
    . $SESSIONFILE
  done
  set -e
fi 

exit 0

# vim:set ai et sts=2 sw=2 tw=80:
Run Code Online (Sandbox Code Playgroud)


nut*_*tty 5

你尝试过吗?

DISPLAY=:0 xrandr --output LVDS1 --auto
Run Code Online (Sandbox Code Playgroud)

来自不同的tty(例如 tty1),

您可以通过 tty7 访问Ctrl Alt F1并切换回(标准图形)tty7 Ctrl Alt F7