如何从普通 Linux 控制台 (tty1) 打开/关闭显示器的背光?
我正在寻找一种不依赖于 Xorg 或特定 Wayland-Compositors 的方法来做到这一点。
假设我想切换连接到的显示器的背光/sys/class/drm/card0-HDMI-A-1
。
编辑:从 tty1 将特定显示器置于待机模式就足以作为答案。
vbetool
似乎有效,但似乎没有一种方法可以只影响一个特定的显示器而不是所有的显示器。
ddcutil setvcp D6 x05
让我关掉我的一台显示器。再说一遍,如何使用这些工具选择哪一个?
答案1
一般来说,显示器背光的打开或关闭不会对整体产生影响。DPMS地位 (IE显示器的整体电源状态)。但是,如果您的显示器可以通过以下方式控制DDC/CI,您可以使用它来设置 DPMS 状态和亮度级别。 (您可能需要在显示器设置中启用 DDC/CI。)
在 DDC/CI 之前要尝试的第一件事是setterm
:这允许配置内核自己的 VT 消隐(这将触发 DPMS):
要立即更改模式,
sudo setterm --powersave <mode>
其中
<mode>
可以是on
,powerdown
,off
(以及其他一些不太有用的值)。要更改消隐延迟,
sudo setterm --blank=<n>
其中
<n>
是以分钟为单位的延迟(0 表示禁用,最大 60)。要更改断电延迟,
sudo setterm --powerdown=<n>
与 具有相同的值
--blank
。
许多工具提供从 Linux 控制台进行 DDC/CI 访问。例如,使用ddccontrol
:
i2c-dev
如有必要,安装模块:sudo modprobe i2c-dev
探测您的设备:
sudo ddccontrol -p
这将列出它找到的设备以及可用的控件。寻找
/dev/i2c-…
结果以及“功率控制”和“亮度和对比度”的控件。更改您的电源设置(使用上面列出的控制地址和值);强制显示器进入待机状态:
sudo ddccontrol -r 0xd6 -w 4 dev:/dev/i2c-9
(这些值适用于我正在使用的显示器;它们可能不适合您的显示器,并且设备很可能会有所不同)。
通过显示器按钮或屏幕菜单可使用的许多控件也应可通过 DDC/CI 使用。特别是,您应该能够调整亮度和对比度、更改输入源(如果您的显示器有多个输入)、调整颜色……
如果您想使用控制显示器的亮度/sys/class/backlight
,请查看模块ddcci-driver-linux
(在 Debian 及其衍生版本中可用ddcci-dkms
)。