ubuntu10.04启用受限驱动后开机Splash分辨率变低的解决方案
1、安装v86d和hwinfo包,下面我们要用到。
sudo apt-get install v86d hwinfo
2、查看自己显卡支持的分辨率。
sudo hwinfo --framebuffer None 00.0: 11001 VESA Framebuffer [Created at bios.464] Unique ID: rdCR.QOJHFkjgnM2 Hardware Class: framebuffer Model: "(C) 1988-2005, ATI Technologies Inc. M92" Vendor: "(C) 1988-2005, ATI Technologies Inc. " Device: "M92" SubVendor: "ATI ATOMBIOS" SubDevice: Revision: "01.00" Memory Size: 16 MB Memory Range: 0xd0000000-0xd0ffffff (rw) 。。。 Mode 0x03ee: 1366x768 (+1408), 8 bits Mode 0x03ef: 1366x768 (+2752), 16 bits Mode 0x03f0: 1366x768 (+5504), 24 bits Config Status: cfg=new, avail=yes, need=no, active=unknown
3、修改/etc/default/grub文件,使用uvesafb的framebuffer来启动。
sudo gedit /etc/default/grub
把下面的两行
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" #GRUB_GFXMODE=640×480
修改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1366x768-24,mtrr=3,scroll=ywrap"
(ps:其中的nomodeset禁用内核kms,个人见解,例如我电脑的分辨率是1366x768)
GRUB_GFXMODE=1366x768
这个要根据第2步所查到的显卡所支持的最大分辨率(当然也可以是其他支持的分辨率)来修改,注意要把前面的#去掉。
4、修改/etc/initramfs-tools/modules文件。
sudo gedit /etc/initramfs-tools/modules
添加下面这行:
uvesafb mode_option=1366x768-24 mtrr=3 scroll=ywrap
(ps:这一步的修改与上一步中的第1处修改关联一致)
5、运行下面的命令,启用framebuffer。
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
6、运行下面的命令,更新grub配置以及initramfs镜像文件。
sudo update-grub sudo update-initramfs -u
7、重启。
至此,重启后你的开机画面和关机画面分辨率就会恢复正常,此时,之前某些方法那种分辨率改好了,但是会出现绿色的边框等问题都不存在了。所以,就好好你的Ubuntu之旅吧。
不过话说回来,Ubuntu是Linux里面发展相当快的桌面系统了,不过要想和windows比,想和windows竞争,她的路还非常的长, 其中不仅仅是功能,更重要的是人性化,是不懂技术的小白安装好系统之后就立即可以使用,不用更换难看的字体,知道怎么简单更新或者不用更新语言包,知道怎 么简单的安装自己想要的软件,不需要安装软件的时候还要考虑包之间的依赖性。如果这些问题都解决好了,那对抗windows的日子就指日可待了,但 Ubuntu的目的不仅仅是这个!