10 vmware gnome resolution arch-linux wayland
我在 Arch Linux 和 VMWare 上使用 Gnome。
当我进入设置窗口时,我找不到我的分辨率(1920x1080)。
我最近在使用 LightDM 并在/etc/X11/xorg.conf.d我的分辨率中添加了一个条目,但现在我使用 GDM 而不是 LightDM 并且我的配置似乎没有改变任何东西,因为 GDM 使用的是 Wayland(如果我错了,请纠正我)。
X11除了Wayland ,我找不到任何方法来做与我所做的相同的事情。
所以我的问题是我们如何在 Wayland 中手动添加分辨率?
tldr --在 Gnome 上,您可以设置内核引导参数以手动覆盖显示器的分辨率。如果您使用的是 Weston 实现(显然 Gnome 不是),您可以在 ~/.config/weston.ini 中配置不同的分辨率
我为此苦苦挣扎了很长时间,我找到了一种目前可以正常工作的折衷方案。但是,我希望有更好的方法,所以如果有,请告诉我。
起初我以为 Gnome 使用 Weston 作为它的 Wayland 层,但显然它不是那样工作的。但是,如果您使用的是 Weston,则可以在~/.config/weston.ini以下位置配置外部显示器的分辨率:
[output]
name=VGA1
mode=173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
Run Code Online (Sandbox Code Playgroud)
输出名称应该是您的显示器的名称。在 Arch 上,你可以运行这个命令来找出连接了哪些显示器:
for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done
Run Code Online (Sandbox Code Playgroud)
要获得模式行的正确值,您可以运行cvt 1920 1080,或使用您需要的任何分辨率。更多信息在这里:https : //wiki.archlinux.org/index.php/Wayland#Configuration
似乎 Gnome 没有办法配置显示分辨率(至少现在是这样)。所以我发现了一个错误报告,其中引用了这个内核引导参数,您可以使用它来覆盖显示器的分辨率。阅读链接的文档以获取完整的详细信息,但在我的系统上,我需要将显示器“DP-1”配置为 1920x1080 和 60Hz,因此我将这一行添加到我的引导参数中:
video=DP-1:1920x1080@60
Run Code Online (Sandbox Code Playgroud)
我正在使用 systemd-boot,所以我将它添加到我的options行中/boot/loader/entries/arch.conf. 如果您使用 GRUB 或其他任何东西,添加此引导参数的步骤将有所不同。
我实际上不确定现在如果我使用此选项集启动然后插入需要不同分辨率的显示器会发生什么。此引导参数会覆盖该参数,还是自动检测失败时的回退?我不知道。因为我不确定,所以我添加了第二个忽略此参数的引导条目。所以有时我可能需要重新启动才能在外部显示器上获得正确的分辨率。但除此之外,它工作正常。
这个答案是对上面接受的答案的重复,特别关注 Gnome 并解释如何查找设备名称。我试图在 Debian GNU/Linux 10 (buster) 下使用 Gnome 桌面将第二个屏幕连接到我的笔记本电脑。该屏幕的建议分辨率为1920x1200。问题是分辨率较低,并且设置菜单中只有 2 个可用选项:
可以/sys/class/drm/在模式文件中看到可用分辨率的设备:
$ cat /sys/class/drm/card0-DP-2/modes
1024x768
800x600
800x600
848x480
640x480
$ cat /sys/class/drm/card0-eDP-1/modes
1920x1080
1920x1080
Run Code Online (Sandbox Code Playgroud)
就我而言,有问题的屏幕的名称是DP-2。
在 Ask Ubuntu 上,这个答案解释了如何向内核启动参数添加新的分辨率。
sudo vim /etc/default/grub
Run Code Online (Sandbox Code Playgroud)
然后编辑了这一行
GRUB_CMDLINE_LINUX_DEFAULT="quiet video=DP-2:1920x1200@60"
Run Code Online (Sandbox Code Playgroud)
然后更新grub:
sudo update-grub
Run Code Online (Sandbox Code Playgroud)
重新启动后,新分辨率可用:
| 归档时间: |
|
| 查看次数: |
10733 次 |
| 最近记录: |