相信很多人都有过这样的经历,在VMware Workstation或者Virtualbox里面装了一个没有桌面环境的Linux虚拟机,资源是省下了,但窗口太小了,操作极为不便,这样就带来了修改窗口大小的需求。
到目前为知,主流的启动控制也就是GRUB了,但GRUB也份lagcy和2两个版本。RHEL7 beta版已经改用了grub2, 估计以后用到lagcy的机会也不多了。但还是在这里说一下方法。
1. grub2
GRUB2既可以为自己,也可以为内核设定帧缓冲.现在已经不使用老的vga=
配置了.推荐方法是在/etc/default/grub
进行如下编辑:
GRUB_GFXMODE=1024x768x32 GRUB_GFXPAYLOAD_LINUX=keep
运行以下命令使配置生效:
# grub-mkconfig -o /boot/grub/grub.cfg
gfxpayload
属性会确保内核也保持这个分辨率
- 如果示例不起作用,请尝试用
vbemode="0x105"
代替gfxmode="1024x768x32"
.请使用适合你屏幕的分辨率. - 可以通过
# hwinfo --framebuffer
命令来显示所有可以使用的分辨率模式(hwinfo在community里),在GRUB命令行下,可以使用vbeinfo
命令
这种方法不管用的话,可以试试老的vga=
方法.将它添加到"GRUB_CMDLINE_LINUX_DEFAULT="
里面就行了,比如 "GRUB_CMDLINE_LINUX_DEFAULT="quiet splash vga=792"
这会将系统的分辨率设定为1024*768
可以选择以下分辨率中的一种:640×480
, 800×600
, 1024×768
, 1280×1024
, 1600×1200
, 1920×1200
2. grub lagcy
在/boot/grub/grub.conf中修改kernel行,添加vga=选项,如果不清楚有哪些可选分辨率,可以先执行hwinfo --framebuffer来查看。其输出类似下面(部分)
Mode 0x0305: 1024x768 (+1024), 8 bits
Mode 0x0317: 1024x768 (+2048), 16 bits
Mode 0x0318: 1024x768 (+4096), 24 bits
Mode 0x0312: 640x480 (+2560), 24 bits
Mode 0x0314: 800x600 (+1600), 16 bits
Mode 0x0315: 800x600 (+3200), 24 bits
Mode 0x0301: 640x480 (+640), 8 bits
Mode 0x0303: 800x600 (+832), 8 bits
Mode 0x0311: 640x480 (+1280), 16 bits
将vga的值设置为其中列出的16进制数即可。
参考文章:
[1]. ArchWiki: GRUB