问题描述
我在HP 550笔记本上全新安装了Ubuntu 11.04。但grub2并不适合这款笔记本电脑可支持的最佳屏幕分辨率(1280×800)。
如何在不使用第三方应用程序的情况下执行此操作?
最佳解决思路
要安全地执行此操作需要两个步骤。
第1步:找到首选模式
重新启动并按住Shift
以显示您的grub。按C
进入控制台模式。然后键入(对于18.04之前的Ubuntu版本):
$ vbeinfo
对于Ubuntu 18.04及更高版本:
$ videoinfo
这将显示grub如何识别您的显示器的各种内容。在底部是”preferred mode” – 在你的情况下它应该说1280×800。记下值。
注意:有时,一些有缺陷的视频卡错误地给Grub提供了错误的首选分辨率 – 如果首选模式远高于您的预期,则在显示的列表中选择您期望的最近模式。
按Esc
返回grub并按Enter
启动。
第2步:在grub中设置分辨率
到达您的终端并输入
$ sudo nano /etc/default/grub
找到这条线
#GRUB_GFXMODE=640x480
删除#
并使用您记下的首选模式更改640x480
。例如。:
GRUB_GFXMODE=1280x800
保存,然后键入
$ sudo update-grub
注意:首选模式必须属于vbeinfo列出的模式。例如,如果您的首选模式是1920×1080(常见的16×9宽高比设置),则vbeinfo不支持您的首选模式,并且可能无法正常工作。事实上,从Ubuntu 13.04开始,vbeinfo似乎没有支持任何16×9模式。在这种情况下,你可以尝试回归常见的东西,如640×480,似乎大多数监视器支持和vbeinfo支持。此外,并非您的显示器必须支持vbeinfo支持的所有模式,您可能需要进行实验。
次佳解决思路
我正在使用Ubuntu 16.04,对于我来说,在Grub的打包版本中有些不同。
vbeinfo
命令不存在。
-
打开
-
在grub菜单中按
c
以获取grub命令行 -
类型
videoinfo
这列出了所有模式 – 它是< width> x< height>你需要注意。 -
可选地,有一个
videotest
命令可用于测试给定的分辨率,例如videotest 1280x1024
。然而,虽然这个测试对我有用,但我还是不能回到grub菜单!所以这不是那么有用(除非有人能解释如何逃避测试。) -
完全启动并编辑(sudo)
/etc/default/grub
,但您要查找的行现在称为GRUB_GFXMODE
。所以un-comment并将其设置为您想要的模式。 -
运行
update-grub
并重新启动。
第三种解决思路
我在带有Nvidia 625GT OEM的华硕M51AC上运行14.04LTS。我发现除了接受的答案之外,我还需要添加以下内容:
GRUB_GFXPAYLOAD="keep"
到/etc /default /grub。
第四种思路
易于使用的Grub2设置定制器。转到”Preferences” – > “Appearance”
-
检查”custom resolution”并选择一个可用的分辨率
-
单击”close”
-
点击”save”
-
关闭程序并重启计算机
第五种思路
对我来说,Ubuntu 17.10服务器就是这样
GRUB_GFXPAYLOAD_LINUX="keep"
GRUB_GFXMODE="1920x1080x32"
我还必须设置以下内容以防止挂起关机
GRUB_CMDLINE_LINUX_DEFAULT="nomodeset"