对于我们这些作软件开发的人,常常要在linux命令行下工作,一般我们装系统 都是只重视X下面的显示配置,而切换到命令行模式就用默认的低分辨率模式。低分辨率模式的缺点很明显,字符密度小,不是点对点显示,无形中降低了我们的工 作效率。其实我们可以通过配置framebuffer来让系统从内核加载起就使用点对点的最大分辨率,方法如下。
首先,安装hwinfo这个软件,ubuntu下操作 sudo apt-get install hwinfo。安装完毕在控制台下输入命令
sudo hwinfo --framebuffer | grep Mode
以我的nc6000 ATI毒显 SXGA屏幕为例:
--------------------------------------------------------------------------------
root@NC6K:/home/fuli# hwinfo --framebuffer | grep Mode
Model: "ATI MOBILITY RADEON 9600 P10 "
Mode 0x0382: 320x200 (+320), 8 bits
Mode 0x030d: 320x200 (+640), 15 bits
Mode 0x030e: 320x200 (+640), 16 bits
Mode 0x030f: 320x200 (+960), 24 bits
Mode 0x0320: 320x200 (+1280), 24 bits
Mode 0x0392: 320x240 (+320), 8 bits
Mode 0x0393: 320x240 (+640), 15 bits
Mode 0x0394: 320x240 (+640), 16 bits
Mode 0x0395: 320x240 (+960), 24 bits
Mode 0x0396: 320x240 (+1280), 24 bits
Mode 0x03a2: 400x300 (+400), 8 bits
Mode 0x03a3: 400x300 (+800), 15 bits
Mode 0x03a4: 400x300 (+800), 16 bits
Mode 0x03a5: 400x300 (+1200), 24 bits
Mode 0x03a6: 400x300 (+1600), 24 bits
Mode 0x03b2: 512x384 (+512), 8 bits
Mode 0x03b3: 512x384 (+1024), 15 bits
Mode 0x03b4: 512x384 (+1024), 16 bits
Mode 0x03b5: 512x384 (+1536), 24 bits
Mode 0x03b6: 512x384 (+2048), 24 bits
Mode 0x03c2: 640x350 (+640), 8 bits
Mode 0x03c3: 640x350 (+1280), 15 bits
Mode 0x03c4: 640x350 (+1280), 16 bits
Mode 0x03c5: 640x350 (+1920), 24 bits
Mode 0x03c6: 640x350 (+2560), 24 bits
Mode 0x0300: 640x400 (+640), 8 bits
Mode 0x0383: 640x400 (+1280), 15 bits
Mode 0x0384: 640x400 (+1280), 16 bits
Mode 0x0385: 640x400 (+1920), 24 bits
Mode 0x0386: 640x400 (+2560), 24 bits
Mode 0x0301: 640x480 (+640), 8 bits
Mode 0x0310: 640x480 (+1280), 15 bits
Mode 0x0311: 640x480 (+1280), 16 bits
Mode 0x0312: 640x480 (+1920), 24 bits
Mode 0x0321: 640x480 (+2560), 24 bits
Mode 0x0303: 800x600 (+800), 8 bits
Mode 0x0313: 800x600 (+1600), 15 bits
Mode 0x0314: 800x600 (+1600), 16 bits
Mode 0x0315: 800x600 (+2400), 24 bits
Mode 0x0322: 800x600 (+3200), 24 bits
Mode 0x0305: 1024x768 (+1024), 8 bits
Mode 0x0316: 1024x768 (+2048), 15 bits
Mode 0x0317: 1024x768 (+2048), 16 bits
Mode 0x0318: 1024x768 (+3072), 24 bits
Mode 0x0323: 1024x768 (+4096), 24 bits
Mode 0x0307: 1280x1024 (+1280), 8 bits
Mode 0x0319: 1280x1024 (+2560), 15 bits
Mode 0x031a: 1280x1024 (+2560), 16 bits
Mode 0x031b: 1280x1024 (+3840), 24 bits
Mode 0x0324: 1280x1024 (+5120), 24 bits
Mode 0x0340: 1400x1050 (+1400), 8 bits
Mode 0x0341: 1400x1050 (+2800), 15 bits
Mode 0x0342: 1400x1050 (+2800), 16 bits
Mode 0x0343: 1400x1050 (+4200), 24 bits
Mode 0x0344: 1400x1050 (+5600), 24 bits
root@NC6K:/home/fuli#
--------------------------------------------------------------------------------
我的SXGA分辨率是1400x1050,所以选择相应的Mode号(我没有装ATI驱动不清楚为什么有两个24bit,不过两个都能用)比如0x0344,记住这个数值。
第二步,以root权限编辑/boot/grub/menu.lst
sudo cp /boot/grub/menu.lst /boot/grub/menu.lst.back (养成好习惯,先备份,呵呵)
sudo gedit /boot/grub/menu.lst
内核启动一行添加红色的部分,值等于你刚才记住的那个数字。
--------------------------------------------------------------------------------
...........
title Ubuntu 8.04.2, kernel 2.6.24-23-generic
root (hd0,0)
kernel /vmlinuz-2.6.24-23-generic root=UUID=5f22defc-7e29-446a-b8eb-6a0dbcad84ac ro quiet locale=zh_CN vga=0x0344 quiet splash
initrd /initrd.img-2.6.24-23-generic
quiet
............
--------------------------------------------------------------------------------
然后保存重启。Ctrl-Alt-F1进入字符环境,眼前豁然开朗,祝贺您有了一个高分辨率字符界面。
上面方法有两点一定要注意,就是vga对应的值超过你的显示范围不要紧张,启动提示错误时直接敲Space正常boot,启动X不会有问题,在图形 环境下重新改写就可以了;第二,framebuffer对应的Mode值根据显卡的和系统的不同会不一样,一定要根据自己系统的hwinfo显示信息取 值,不要一味相信网上的信息。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fox1978/archive/2009/03/11/3980224.aspx
1. 编辑 /etc/initramfs-tools/modules,在其中加入:
fbcon
vesafb
vga16fb
2. 编辑 /etc/modprobe.d/blacklist-framebuffer,注释掉以下两行:
blacklist vesafb
blacklist vga16fb
3. 修改/boot/grub/ 内的menu.lst ,找到类似如下几行代码,在kernel一行结尾加入fb分辨率参数:
例如:
title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid 328eed5f-0f89-41b8-b021-730ae3f167d1
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=328eed5f-0f89-41b8-b021-730ae3f167d1 ro quiet splash vga=0x314
initrd /boot/initrd.img-2.6.27-9-generic
quiet
注:vga=0×314 即为800*600 16位
终端的分辨率可以用fbset设置。
|640x480 800x600 1024x768 1280x1024
----+-------------------------------------
256 | 0x301 0x303 0x305 0x307
32k | 0x310 0x313 0x316 0x319
64k | 0x311 0x314 0x317 0x31A
16M | 0x312 0x315 0x318 0x31B
4. 刷新并重新启动
sudo update-initramfs -u
5.如何判断buffer是否启用
首先确认内核是否支持 buffer ,查看 /proc/fb 文件是否存在,存在则说明支持,否则,说明不支持。其次查看 buffer 设备是否已激活,若 /dev/fb0 文件存在,则说明已经激活;否则说明没有激活。
6.安装zhcon显示中文
如果源里有该软件可以直接终端输入下面命令安装:
$sudo apt-get install zhcon
启动zhcon:
zhcon --utf8 --drv=fb
附:在控制台下播放电影
mplayer abc.mov -vo fbdev
视频输出用fbdev2也可以。
(jingxshi) |