如何安全更改grub2的屏幕分辨率?


54

我在HP 550笔记本电脑上重新安装了Ubuntu 11.04。但是grub2并不真正适合此笔记本电脑可以支持的最佳屏幕分辨率(1280x800)。

不使用第三方应用程序怎么办?

Answers:


69

安全地执行此操作需要两个步骤。

步骤1:找到首选模式

重新启动并按住Shift以显示您的grub。按C进入控制台模式。然后键入(对于18.04之前的Ubuntu版本):

$ vbeinfo

对于Ubuntu 18.04及更高版本:

$ videoinfo

这将显示grub如何识别您的显示内容的各种内容。底部是“首选模式”-在您的情况下,应为1280x800。记下该值。

注意:有时,某些错误的视频卡会错误地为Grub提供错误的首选分辨率-如果首选模式比您期望的要高得多,请在显示的列表中选择最接近的模式。

Esc返回至grub,然后按Enter引导。

步骤2:在grub中设置分辨率

到达您的终端并输入

$ sudo nano /etc/default/grub

找到线

#GRUB_GFXMODE=640x480

删除#640x480使用您写下的首选模式进行更改。例如:

GRUB_GFXMODE=1280x800

保存,然后键入

$ sudo update-grub

注意:首选模式必须在vbeinfo列出的模式中。例如,如果您的首选模式是1920x1080(常见的16x9宽高比设置),则vbeinfo不支持您的首选模式,并且可能无法正常工作。实际上,从Ubuntu 13.04开始,vbeinfo似乎不支持任何16x9模式。在这种情况下,您可以尝试回退到640x480之类的常见值,似乎大多数监视器都支持,而vbeinfo支持。另外,监视器不一定支持vbeinfo支持的所有模式,您可能必须尝试一下。


@fossfreedom:显示grub时,我什么也看不到,我的屏幕上显示“超出范围信号”。因此,我看不到的输出vbeinfo。在这种情况下,我该如何纠正?
Rajat Gupta 2014年

@ user01-您需要先启动进入ubuntu-将gru​​b中的GRUB_GFXMODE设置为640x480之类的较低值。然后,下一次重新启动时,您将处于grub状态,然后可以看到vbeinfo的输出
fossfreedom

5
您可以使用sudo hwinfo --framebuffer显示与vbeinfo相同的信息。
克里斯K

3
在运行16.0.4时,我注意到内核启动后分辨率一直在重置。我必须添加:GRUB_GFXPAYLOAD =“ keep”和GRUB_CMDLINE_LINUX =“ nomodeset”使其保持不变。
JD Frias

1
那个固定的grub,但是为了固定我需要的TTY控制台分辨率,sudo dpkg-reconfigure console-setup并选择了16x32的字体终端。(请注意,nomodeset导致了更严重的问题。其他详细信息:Ubuntu 18.04,Dell XPS 15、3840 x 2160)。
robocat

21

我正在使用Ubuntu 16.04,对于我来说,打包版本的Grub有点不同。

vbeinfo命令不存在。

  1. 打开
  2. 在grub菜单上,按c以获取grub comand行
  3. 类型videoinfo
    这列出了所有模式-您需要记下的<width> x <height>。
  4. (可选)有一个videotest命令可用于测试给定的分辨率,例如videotest 1280x1024但是,尽管此测试对我有用,但我无法回到grub菜单!因此,它并不是很有用(除非任何人都可以解释如何逃脱测试。)
  5. 完全启动并进行编辑(sudo),/etc/default/grub但现在要查找的行称为GRUB_GFXMODE。因此取消注释并将其设置为所需的模式。
  6. 运行update-grub并重新启动。

1
对于使用16.04的我来说,videoinfo在grub命令行中键入会导致出现诸如“安全启动禁止加载模块...”之类的错误。因此,我在BIOS设置中禁用了安全启动,然后grub菜单中出现了更合理的屏幕分辨率,而无需执行其他任何操作。也许“安全启动”选项正在阻止grub的默认autoGRUB_GFXMODE生效。
snark

我们需要重新启动才能发现视频卡支持的帧速率缓冲区,这有点荒谬……必须有一种更简单的方法!
GrayedFox

1
Commadn vbeinfo现在videoinfo在Ubuntu 18.04
斯特凡V

bash命令行上的“ hwinfo --framebuffer”应该与“ vbeinfo”或“ videoinfo”相同,但不适用于我。(我在屏幕上得到另一行输出,但每一行都会覆盖前一行,并且bash提示会抹掉最后一行。将输出重定向到文件会产生一个空文件。)
Mark J. Bobak,


3

Grub Customizer

易于使用的Grub2设置定制程序。转到“首选项”->“外观”

  • 检查“自定义分辨率”,然后选择一种可用的分辨率
  • 点击“关闭”
  • 点击“保存”
  • 关闭程序并重新启动计算机

在此处输入图片说明


1
我发现此方法不可靠,我的菜单颜色从不更新,并且分辨率列表在所有情况下均无效。幸运的是,选择不受支持的分辨率时,一切都不会中断,它什么都不会改变
Dirk Hartzer Waldeck 2011年

1
我曾经遇到过一个相同的问题,即没有应用任何视觉设置……在“首选项”中“高级”选项卡下,请确保选中了“ GRUB_GFXMODE”,使用背景图片时,请确保该图片位于相同的“ /启动”文件夹作为grub安装。现在,该程序中的所有选项对我而言都完美无缺。
2011年

2

对我来说,在Ubuntu 17.10服务器上

GRUB_GFXPAYLOAD_LINUX="keep"
GRUB_GFXMODE="1920x1080x32"

我还必须设置以下内容以防止关机挂起

GRUB_CMDLINE_LINUX_DEFAULT="nomodeset"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.