1、首先检查虚拟机屏幕分辨率和显示分辨率的设置情况
一般情况下,在虚拟机中装完Fedora之后,系统默认的显示分辨率为800*600,但是在系统->管理->显示的位置修改显示分辨率时,reboot之后不起作用,根本原因是没有重新设置屏幕分辨率。在系统->首选项->硬件->屏幕分辨率的位置修改合适的屏幕分辨率(这个过程相当于windows系统中调整分辨率的过程)。reboot一下,看到屏幕分辨率和显示分辨率是一致的(屏幕分辨率决定了显示分辨率可显示的最大范围)。
2、查看你的显示分辨率模式下对应的VGA模式值为多少,然后在系统启动文件中给kernel传递VGA参数
根据启动使用的工具不同有lilo和grub
lilo下设置方法:修改/etc/lilo.conf 在kernel 行的最后加上VGA参数
如显示模式为1024x768x24bpp时,加上VGA=0x318,保存文件,reboot即可
grub下设置方法:修改/boot/grub/grub.conf 在kernel行的最后加上同样的参数,或者修改
/boot/grub/menu.lst,其实这两个文件都是一样的,因为grub.conf是menu.lst的链接,修改需要root权限。
3、如果是之前不知道自己的显示分辨率是多少,然后就在系统启动文件中添加了VGA参数,那么在你修改了屏幕分辨率之后,reboot时,会有一个提示说,显示模式不正确,让你按enter键进入选择合适的模式,会弹出很多相应的模式代号以及对应的分辨率模式:16进制VGA值 像素列数*像素行数*颜色位深
340 800*600*32 VESA
364 1280*720*32 VESA
36A 1280*800*32 VESA
379 1280*768*32 VESA
你选择一个合适的之后,进入系统查看启动文件中是否有相应的VGA参数,如果没有,则要手动改正为刚刚选择的那个值,然后再reboot,这时,帧缓存才算开启,可以到/dev目录下查看是否有fb fb0这两个文件
3、下面是一些常用参数
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
色彩 |
640x400 |
640x480 |
800x600 |
1024x768 |
1280x1024 |
1600x1200 |
4bits |
? |
? |
0x302 |
? |
? |
? |
8bits |
0x300 |
0x301 |
0x303 |
0x305 |
0x307 |
0x31C |
15bits |
? |
0x310 |
0x313 |
0x316 |
0x319 |
0x31D |
16bits |
? |
0x311 |
0x314 |
0x317 |
0x31A |
0x31E |
24bits |
? |
0x312 |
0x315 |
0x318 |
0x31B |
0x31F |
32bits |
? |
? |
? |
? |
? |
? |
4、以下文章摘自ChinaUnix
如果内核不支持framebuffer驱动,要编译内核以便支持framebuffer驱动
用framebuffer驱动,设置console 模式下的分辨率
小菜使用的RHEL5在console模式下,分辨率只有800*600,字体看起来很大,看得不清楚,一直想修改console的分辨率,网上绝大多数教程是说修改/etc/X11/xorg.conf文件,但是修改此文件影响的是X-window的分辨率,而非console模式。会对朋友们产生一定的误导,在此将我的解决方法记录如下,仅供需要的朋友参考
在这里用到了内核里的framebuffer驱动来修改默认分辨率。
如果你的内核是支持 framebuffer 驱动的,可以跳过Step1,直接看Step2
Step1 编译内核,添加framebuffer驱动。
具体编译内核的步骤可以参考小菜先前在版里发的帖子或者查看
http://blog.chinaunix.net/u1/55764/showart_1196059.html在此,重点说一下编译时要选中的项,以加入framebuffer驱动支持
VGA text console
Video mode selection support
Support for frame buffer devices (EXPERIMENTAL)
VESA VGA graphics console
Advanced low level driver options
8 bpp packed pixels support
16 bpp packed pixels support
24 bpp packed pixels support
32 bpp packed pixels support
VGA characters/attributes support
Select compiled-in fonts
VGA 8x8 font
VGA 8x16 font
我们还要知道自己所用的显示卡,也有 framebuffer的驱动,所以也要一并选中,比如
nVidia Framebuffer Support
ATI Radeon display support
编译完成后,你的内核就支持framebuffer驱动了
Step2
选择你需要的分辨率
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
在此我选了第一个1024x768 64k色,并记住对应的vga的值为791
Step3
修改grub,在启动时向内核传递分辨率参数
以我的电脑为例,默认的grub.conf文件为
default=0
timeout=5
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
#hiddenmenu
title Red Hat Linux5 (2.6.26.5)
root (hd0,2)
kernel /boot/vmlinuz-2.6.26.5 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.26.5.img
title WinXp
rootnoverify (hd0,0)
chainloader +1
然后添加内核参数vga=791 到grub.conf文件,告知内核以1024x768,64k色开启console,修改后如下
default=0
timeout=5
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
#hiddenmenu
title Red Hat Linux5 (2.6.26.5)
root (hd0,2)
kernel /boot/vmlinuz-2.6.26.5 vga=791 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.26.5.img
title WinXp
rootnoverify (hd0,0)
chainloader +1
保存后重启系统 ,选择进入linux,则系统会以1024x768的分辨率进入console
PS:小菜的电脑是宽屏1280x800,以1024x768进入consle后,右边会有一个竖条区域不会显示任何内容,即字体不会因拉伸而变形。
5、
下面这个链接里是关于VESA的一些相关资料
6、(摘自CSND,也是介绍Fedora8 配置framebuffer的)对于自编译内核的,需要注意以下几点。
1.在编内核时,要选中如下的选项;以加入 framebuffer 驱动的支持;
[*] VGA text console[*] Video mode selection support[*] Support for frame buffer devices (EXPERIMENTAL)[*] VESA VGA graphics console[*] Advanced low level driver options
<*> 8 bpp packed pixels support
<*> 16 bpp packed pixels support
<*> 24 bpp packed pixels support
<*> 32 bpp packed pixels support
<*> VGA characters/attributes support[*] Select compiled-in fonts[*] VGA 8x8 font[*] VGA 8x16 font
2,我们还要知道自己所用的显示卡,也有 framebuffer的驱动,所以也要一并选中,比如
<*> nVidia Framebuffer Support
<*> ATI Radeon display support
在查看内核选项是,用 shift键+?号的组合键,就能看到详细情况;
阅读(1719) | 评论(0) | 转发(0) |