xrandr常用命令
xrandr
是一个用于配置和查询 X Window 系统中显示器和显示模式的命令行工具。以下是一些常用的 xrandr
命令示例:
# 列出所有连接的显示器和它们的当前状态
xrandr
# 设置主显示器
xrandr --output HDMI-1 --primary
# 启用或禁用显示器
xrandr --output HDMI-1 --auto
xrandr --output HDMI-1 --off
# 设置显示器的分辨率和刷新率
xrandr --output HDMI-1 --mode 1920x1080 --rate 60
# 设置显示器的位置
xrandr --output HDMI-1 --right-of eDP-1
xrandr --output HDMI-1 --left-of eDP-1
xrandr --output HDMI-1 --above eDP-1
xrandr --output HDMI-1 --below eDP-1
# 设置显示器的位置
xrandr --output HDMI-1 --rotate normal
xrandr --output HDMI-1 --rotate left
xrandr --output HDMI-1 --rotate right
xrandr --output HDMI-1 --rotate inverted
# 设置显示器的亮度
xrandr --output HDMI-1 --brightness 0.8
# 列出所有可用的分辨率和刷新率
xrandr --listmonitors
xrandr --query
添加分辨率模式
1.生成新的分辨率模式: 使用 cvt
命令生成一个新的分辨率模式。例如,要生成一个 1920×1080 的分辨率模式:
cvt 1920 1080
2.添加新的分辨率模式: 使用 xrandr
命令添加新的分辨率模式。例如,使用上面生成的 Modeline
:
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
3.将新的分辨率模式添加到显示器: 使用 xrandr
命令将新的分辨率模式添加到指定的显示器。例如,将新的分辨率模式添加到 HDMI-1
显示器:
xrandr --addmode HDMI-1 "1920x1080_60.00"
4.设置新的分辨率模式: 使用 xrandr
命令设置显示器使用新的分辨率模式。例如:
xrandr --output HDMI-1 --mode "1920x1080_60.00"
分辨率后+号和星号区别
在使用 xrandr
命令查看显示器和分辨率时,你可能会看到一些分辨率后面带有 +
号或 *
号。这些符号表示不同的含义:
- 星号 (
*
):表示当前正在使用的分辨率和刷新率。这是当前显示器正在显示的模式。 - 加号 (
+
):表示该分辨率是可用的,但不是当前正在使用的模式。这意味着你可以切换到这个分辨率,但它不是当前的活动模式。
永久生效的方式
通过 xrandr
命令添加的自定义分辨率模式在重启后不会自动保留。xrandr
命令是在运行时对显示配置进行临时更改的工具,这些更改不会持久化到系统重启。
如果你希望在每次启动时自动应用自定义分辨率模式,你需要将这些设置添加到启动脚本中。以下是一些常见的方法:
方法一:使用 ~/.xprofile
或 ~/.xinitrc
: 如果你使用的是 startx
或 xinit
启动 X 会话,可以将 xrandr
命令添加到 ~/.xprofile
或 ~/.xinitrc
文件中。
# ~/.xprofile 或 ~/.xinitrc
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode HDMI-1 "1920x1080_60.00"
xrandr --output HDMI-1 --mode "1920x1080_60.00"
方法 二:使用 ~/.config/autostart
: 如果你使用的是桌面环境(如 GNOME、KDE 等),可以将 xrandr
命令添加到一个自启动的脚本中,并将其放入 ~/.config/autostart
目录。创建一个 .desktop
文件:
# ~/.config/autostart/xrandr.desktop
[Desktop Entry]
Type=Application
Exec=sh -c 'xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync; xrandr --addmode HDMI-1 "1920x1080_60.00"; xrandr --output HDMI-1 --mode "1920x1080_60.00"'
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=xrandr
Comment=Apply custom resolution
方法 三:使用显示管理器的配置文件: 如果你使用的是显示管理器(如 LightDM、GDM、SDDM 等),可以编辑相应的配置文件或创建一个自启动脚本。例如,对于 LightDM,可以编辑 /etc/lightdm/lightdm.conf
文件,添加一个自启动脚本:
# /etc/lightdm/lightdm.conf
[Seat:*]
display-setup-script=/path/to/your/xrandr-script.sh
然后创建 /path/to/your/xrandr-script.sh
脚本:
#!/bin/bash
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode HDMI-1 "1920x1080_60.00"
xrandr --output HDMI-1 --mode "1920x1080_60.00"
通过这些方法,你可以确保在系统重启后自动应用自定义分辨率模式。