我正在使用 i3 和 lightdm,它们带有默认的 unity-greeter。
我已经努力了好几天试图改变欢迎界面的分辨率。它卡在 800x600px
我已经在 Google 上搜索并尝试了 ubuntu wiki、manjaro wiki 等上所写的各种内容。
目前我有以下设置:
自定义配置文件
/etc/lightdm/lightdm.conf.d/50-greeter-resolution.conf
其中包含:
[Seat:*]
display-setup-script=/etc/lightdm/screen-resolution
脚本/etc/lightdm/screen-resolution
包含:
#!/bin/sh
sleep 3
xrandr --display Virtual1 --primary --mode 1920x1200
查看日志时/var/logs/lightdm/lightdm.log
他们确认脚本正在运行,退出代码为 0(零),并且睡眠也确认在迎宾屏幕出现之前会有 3 秒的延迟。
我还看到鼠标光标在正确的分辨率下快速移动,然后它直接切换回 800x600,所以某些东西正在覆盖它。
有谁知道如何解决这个问题?
答案1
尝试更换线路
xrandr --display Virtual1 --primary --mode 1920x1200
和
xrandr --output OUTPUT_NAME --primary --mode 1920x1200
或者更好的是,
xrandr --output OUTPUT_NAME --primary --preferred
OUTPUT_NAME
在您的脚本中,可以通过以下方式获取可能的值
xrandr -q
此命令还将返回有关每个输出的连接状态和可用模式的详细信息。要列出连接的仅输出,输入
xrandr -q | grep -e '\( \)connected' | awk -F' ' '{ print $1 }'
一些解释基于man xrandr
:
--display DISPLAY_NAME
选择要使用的 X 显示器。但请注意,这指的是 X 屏幕抽象,不是监视器(或输出)。[这可能是您的脚本无法按预期运行的原因。]--output OUTPUT_NAME
选择要重新配置的输出。使用输出的名称或 XID。--primary
将输出设置为主要输出。--preferred
选择预先指定的输出的首选模式。
如果上述修复不起作用,值得尝试替代方案
[Seat:*]
greeter-setup-script=/etc/lightdm/screen-resolution
挂载到配置文件中。此外,在某些情况下,可能需要明确将脚本文件的所有权转让给 LightDM。这可以通过
sudo chown lightdm:lightdm /etc/lightdm/screen-resolution
(在您的情况下,最后一步可能无关紧要,因为根据您的观察,LightDM 已经可以执行该脚本。)
如果你正在使用多显示器设置(或带有扩展坞的笔记本电脑),你最好使用稍微复杂一点的脚本,该脚本可以识别目标主显示器是否已连接并采取相应措施。例如,这里。