所以我在家里有这个设置:
+------------------+ +----------------+
| Secondary screen | | Primary screen |
| 1280x1024 75Hz | | 1920x1200 60Hz |
| (Rotated) | | |
+--+---------------+ +--+--------+----+
| VGA | DVI | Display
+--+-----------+ | |
| HDMI <-> VGA | | |
+--+-----------+ | |
| | |
+--+--+ | |
| KVM | +--------------+ |
+-+-+-+ | |
| | | |
| +-----(--------------+ |
| | | |
| HDMI | DVI | HDMI | Display
+-+-------+-----+ +-+--------+--------+
| Home PC | | Work from home PC |
| Linux | | Windows |
+---------------+ +-------------------+
(这个问题的主题是我的家用电脑,运行带有 sddm 的 Kubuntu 20.04。)
大约一周前,我的家用电脑无法检测到辅助显示器的分辨率,因此恢复为 640x480 60Hz。结果,我的主屏幕在登录屏幕 (sddm) 上降级为类似的分辨率,并且在登录后一直保持这种状态。
我能够使用 KDE 的显示设置来修复主显示器的分辨率,但我的辅助屏幕可用的分辨率只有 640x480。
确实输出的xrander
是:
[...]
HDMI-A-0 connected 640x480+0+0 left (normal left inverted right x axis y axis) 0mm x 0mm
640x480 59.94
DVI-D-0 connected primary 1920x1200+1024+40 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 59.95*+
1920x1080 60.00
1600x1200 60.00
1680x1050 59.88
1280x1024 60.02
1440x900 59.95
1280x960 60.00
1280x800 59.95
1280x720 59.95
1024x768 60.00
800x600 60.32
640x480 59.94
720x400 70.08
我家里运行 Windows 的办公电脑不受影响,并且两个显示器都使用了适当的分辨率。
/usr/share/sddm/scripts/Xsetup
我通过编辑和添加解决了这个问题:
xrandr --newmode 1280x1024_75_my 138.75 1280 1368 1504 1728 1024 1027 1034 1072 -hsync +vsync
xrandr --addmode HDMI-A-0 1280x1024_my
# generated with arandr
xrandr --output DisplayPort-0 --off \
--output HDMI-A-0 --mode 1280x1024_75_my --pos 0x0 --rotate left \
--output DVI-D-0 --primary --mode 1920x1200 --pos 1024x40 --rotate normal
但是,当我开始一个新会话时(我和我的妻子使用它在她的“一侧”和我的“一侧”之间移动而不需要注销),我看到一个黑屏,屏幕上有一个闪烁的光标,很快就变成了“无信号”的消息。
当发生这种情况时,我无法使用 ++ 切换到不同的虚拟终端[Ctrl]
,我唯一的选择是重置。[Alt]
[F<n>]
事实上,闪烁的光标属于tty2
,并且它只出现在我的主显示器上,我的辅助显示器是空白的。我可以说,如果在创建新会话之前我使用[Ctrl]
+ [Alt]
+[F2]
进入tty2
,我会在两个屏幕上都收到登录提示(辅助屏幕未正确旋转)。
当我使用[Ctrl]
++返回 X 会话并从那里开始新会话时,我可以在主显示器上看到我的登录信息,而辅助屏幕则一片空白。在键盘上打字没有反应,几秒钟后,屏幕上显示的内容变为“无信号”。[Alt]
[F1]
tty2
当我从会话中注销时,我确实会看到 sddm 屏幕,并且可以重新登录。
我的问题是:我如何修复我的屏幕分辨率,以便当我创建新会话时我能得到一个正常工作的 sddm 屏幕?
答案1
apt upgrading
从我的系统中删除一些 i386 软件包后,这个问题得到了解决,因为我在启动系统时遇到了 404 错误。
特别是我通过 删除了libssl1.1:i386
、、和一堆依赖libudev1:i386
项。libsystemd0:i386
apt autoremove