Ubuntu 10.04开机画面低分辨率问题解决方案
(2010-05-06 15:46:56)
[
http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=269399&start=0&sid=e087d9936a77ed7df3549831 73fefa69]
Ubuntu 10.04, x64 系统。为了使用compiz桌面特效,安装了Nvidia的限制驱动,不过启动画面splash的分辨率由1440*900降低成640*480了。网上 看了好多帖子,包括 jorux 的帖子 “解决升级显卡驱动后开机动画低分辨率问题”,一直没有解决问题。
今天终于在英文论坛上找到一个切实可 行的办法,并经本人试验,在1440*900的分辨率下确实有效。特与大家分享:
原文地址: http://idyllictux.wordpress.com/2010/04/26/lucidubuntu-10-04-high-resolution-plymouth-virtual-terminal-for-atinvidia-cards-with-proprietaryrestricted-driver/
现 简述解决过程:
1. 确认grub和plymouth的系统配置文件是原始状态,没有应用过其它的修改方案。
2. 安装v86d和hwinfo包,下面我们要用到:
3. 查看自己显卡支持的分辨率:
4. 修改/etc/default/grub文件,使用uvesafb的framebuffer来启动
把下面的两行
修改为:
5. 修改/etc/initramfs-tools/modules文件,
添加下面这行:
6. 运行下面的命令,启用framebuffer:
7. 运行下面的命令,更新grub配置文件:
8. 重启。大功告成!
注:有可能第一 次重启后不管用,再重启一次就可以了
Ubuntu 10.04, x64 系统。为了使用compiz桌面特效,安装了Nvidia的限制驱动,不过启动画面splash的分辨率由1440*900降低成640*480了。网上 看了好多帖子,包括 jorux 的帖子 “解决升级显卡驱动后开机动画低分辨率问题”,一直没有解决问题。
今天终于在英文论坛上找到一个切实可 行的办法,并经本人试验,在1440*900的分辨率下确实有效。特与大家分享:
原文地址: http://idyllictux.wordpress.com/2010/04/26/lucidubuntu-10-04-high-resolution-plymouth-virtual-terminal-for-atinvidia-cards-with-proprietaryrestricted-driver/
现 简述解决过程:
1. 确认grub和plymouth的系统配置文件是原始状态,没有应用过其它的修改方案。
2. 安装v86d和hwinfo包,下面我们要用到:
代码:
sudo apt-get install v86d hwinfo
3. 查看自己显卡支持的分辨率:
代码:
sudo hwinfo --framebuffer
引用:
None 00.0: 11001 VESA Framebuffer
[Created at bios.464]
Unique ID: rdCR.VSBbdW2x3qC
Hardware Class: framebuffer
Model: "NVIDIA G86 Board - NV_NB8M "
Vendor: "NVIDIA Corporation"
Device: "G86 Board - NV_NB8M "
SubVendor: "NVIDIA"
SubDevice:
Revision: "Chip Rev"
Memory Size: 14 MB
Memory Range: 0xd1000000-0xd1dfffff (rw)
......
Mode 0x0364: 1440x900 (+1440), 8 bits
Mode 0x0365: 1440x900 (+5760), 24 bits
.......
Config Status: cfg=new, avail=yes, need=no, active=unknown
[Created at bios.464]
Unique ID: rdCR.VSBbdW2x3qC
Hardware Class: framebuffer
Model: "NVIDIA G86 Board - NV_NB8M "
Vendor: "NVIDIA Corporation"
Device: "G86 Board - NV_NB8M "
SubVendor: "NVIDIA"
SubDevice:
Revision: "Chip Rev"
Memory Size: 14 MB
Memory Range: 0xd1000000-0xd1dfffff (rw)
......
Mode 0x0364: 1440x900 (+1440), 8 bits
Mode 0x0365: 1440x900 (+5760), 24 bits
.......
Config Status: cfg=new, avail=yes, need=no, active=unknown
4. 修改/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=1440x900-24,mtrr=3,scroll=ywrap"
引用:
GRUB_GFXMODE=1440x900
注意要把前面的#去掉。
5. 修改/etc/initramfs-tools/modules文件,
代码:
sudo gedit /etc/initramfs-tools/modules
添加下面这行:
引用:
uvesafb mode_option=1440x900-24 mtrr=3 scroll=ywrap
6. 运行下面的命令,启用framebuffer:
代码:
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
7. 运行下面的命令,更新grub配置文件:
代码:
sudo update-grub2
sudo update-initramfs -u
sudo update-initramfs -u
8. 重启。大功告成!
注:有可能第一 次重启后不管用,再重启一次就可以了
nvidia驱动从安装到配置(解决刷新率, 无标题栏和使用开源驱动等问题)
1. 安装
方法1(推荐). 直接在受限驱动里选驱动安装
然后
重启(ubuntu10.4必需重启计算机而不能只是重启X, 否则会出问题)
方法2. 到官网下最新的驱动安装
网址
http://www.nvidia.com/page/drivers.html
在option1中选择你的显卡, 然后点search(其实就3种驱动, gf6以后的显卡用195.xx.xx, gf5用173.xx.xx, gf4到gf2用96.43.16)
下载下来后, 把驱动run文件放到你的home里, 如/home/yourname里.
如果你装过方法1的受限驱动. 先删除
确认安装了编译环境
sudo aptitude install build-essential
ubuntu10.04需要先关闭kms
先打开/etc/default/grub,命令:
把 nomodeset 加到 GRUB_CMDLINE_LINUX 那一行如:
然后运行
代码:
重启, 再安装NV驱动.
然后点Ctrl + Alt +F1到第一控制台.
输入用户密码, 然后输入命令关闭X.
点Ctrl + Alt +F7和点Ctrl + Alt +F8看X是否关闭. 如果不能关闭X, 用下面的命令
然后运行安装文件
进入安装界面后,首先接受协议,选“接受” 可能会有提示已经安装了旧的驱动(视乎你自己是否有手动安装过),是否删除,选yes就是了, 一般会提示缺少模块,问是否网上下载,选“no”, 提示需要自己编译模块,选“ok”,然后编译安装开始, 最后提示需要修改xorg.conf,是否允许,选yes, 完成安装,选ok。
打开xorg.conf, 看有没有错误的分辨率. 有的话去掉
然后启动gdm, 看驱动是否正常工作
然后禁用其他的driver驱动模块(否则启动后会花屏)
将其中的 DISABLED_MODULES=" " 改为:DISABLED_MODULES="nv nvidia_new"
让内核升级后自动安装nvdia驱动
首先确定驱动正常工作后, 必需先重启一次.
然后
第一步,把你使用的驱动放到/usr/src下,并生成链接。例如:
这样做的目的是当你更换所用的驱动时,只需要删除原来的链接后再指定新的链接即可,不需要改变我们将使用的脚本(script)。
自动安装nv驱动的脚本这个压缩包里
基本上,原理是检查新安装的内核是否安装了正确的nv驱动,如果没有,脚本将自动为新内核安装驱动模块。
把里面文件update- nvidia解压到当前目录, 然后
这样内核升级后就会自动安装nvdia驱动, 不用再没更新一次内核就重装一次驱动.
2. 问题解决
1. CRT显示器刷新率达不到85Hz
如果安装后启动X后没有85Hz.
修改xorg
重点是这一段
里面的
可用通过查看显示器说明书得知正确的横扫和纵扫频率.
或者通过不断的实验, 直到重启X后, 频率为85Hz
2. 开启3D特效(compiz)后标题栏消失(compizconfig 选项里已经选上了 “窗口装饰”)
nvidia驱动用过几年都知道, 这种情况一般不会出现, 但会随着驱动更新反复出现.
3. CRT分辨率过低, 过高
编辑xorg.conf
在修改下面的一段
中的分辨率
修改后分辨率仍然过低, 或者没有这一段(很多时候在xorg中没有)
修改
4. 图形化修改方法
注意此方法对刷新率过低无效, 对分辨率过低无效
3. 使用开源nouveau驱动
安装
1. 不使用KMS
1.1 不使用xorg.conf
1.2 使用xorg.conf
由于官方驱动和nouveau驱动的xorg.conf现在是兼容的, 只需把xorg.conf中的
改成
如
然后可能还需要修改纵横扫, 因为可能显示器的分辨率和刷新率有问题.
真实奇怪, 两种驱动的纵横扫居然不一样.
登出
2. 使用KMS
CRT最好不要用, 因为xorg.conf不需要, 也没有用了. 不能修改刷新率了.
a 晚启动
在
中添加一行
本人死前, 不, 是用ati之前用的是nvidia gf2. 写下这篇文章作为纪念.
不是我们不支持ATI, 是ATI不支持我们!
参考:
[分享]在内核升级后自动安装nvdia驱动
方法1(推荐). 直接在受限驱动里选驱动安装
然后
代码:
sudo
nvidia-xconfig
重启(ubuntu10.4必需重启计算机而不能只是重启X, 否则会出问题)
方法2. 到官网下最新的驱动安装
网址
http://www.nvidia.com/page/drivers.html
在option1中选择你的显卡, 然后点search(其实就3种驱动, gf6以后的显卡用195.xx.xx, gf5用173.xx.xx, gf4到gf2用96.43.16)
下载下来后, 把驱动run文件放到你的home里, 如/home/yourname里.
如果你装过方法1的受限驱动. 先删除
代码:
sudo apt-get remove --purge
nvidia*
确认安装了编译环境
sudo aptitude install build-essential
ubuntu10.04需要先关闭kms
先打开/etc/default/grub,命令:
代码:
sudo gedit /etc/default/grub
把 nomodeset 加到 GRUB_CMDLINE_LINUX 那一行如:
引用:
GRUB_CMDLINE_LINUX="nomodeset"
然后运行
代码:
代码:
sudo update-grub
重启, 再安装NV驱动.
然后点Ctrl + Alt +F1到第一控制台.
输入用户密码, 然后输入命令关闭X.
代码:
sudo stop gdm
点Ctrl + Alt +F7和点Ctrl + Alt +F8看X是否关闭. 如果不能关闭X, 用下面的命令
代码:
sudo service gdm stop
然后运行安装文件
代码:
sudo sh 文件名.run
进入安装界面后,首先接受协议,选“接受” 可能会有提示已经安装了旧的驱动(视乎你自己是否有手动安装过),是否删除,选yes就是了, 一般会提示缺少模块,问是否网上下载,选“no”, 提示需要自己编译模块,选“ok”,然后编译安装开始, 最后提示需要修改xorg.conf,是否允许,选yes, 完成安装,选ok。
打开xorg.conf, 看有没有错误的分辨率. 有的话去掉
代码:
sudo vim xorg.conf
然后启动gdm, 看驱动是否正常工作
代码:
sudo start gdm
然后禁用其他的driver驱动模块(否则启动后会花屏)
代码:
sudo gedit /etc/default/linux-restricted-modules-common
将其中的 DISABLED_MODULES=" " 改为:DISABLED_MODULES="nv nvidia_new"
让内核升级后自动安装nvdia驱动
首先确定驱动正常工作后, 必需先重启一次.
然后
第一步,把你使用的驱动放到/usr/src下,并生成链接。例如:
代码:
sudo mv
NVIDIA-Linux-x86-173.14.05-pkg1.run /usr/src
sudo ln -s /usr/src/ NVIDIA-Linux-x86-173.14.05-pkg1.run /usr/src/ nvidia-driver
sudo ln -s /usr/src/ NVIDIA-Linux-x86-173.14.05-pkg1.run /usr/src/ nvidia-driver
这样做的目的是当你更换所用的驱动时,只需要删除原来的链接后再指定新的链接即可,不需要改变我们将使用的脚本(script)。
自动安装nv驱动的脚本这个压缩包里
附件:
基本上,原理是检查新安装的内核是否安装了正确的nv驱动,如果没有,脚本将自动为新内核安装驱动模块。
把里面文件update- nvidia解压到当前目录, 然后
代码:
sudo mkdir -p /etc/kernel/postinst.d
sudo install update- nvidia /etc/kernel/postinst.d
sudo install update- nvidia /etc/kernel/postinst.d
这样内核升级后就会自动安装nvdia驱动, 不用再没更新一次内核就重装一次驱动.
2. 问题解决
1. CRT显示器刷新率达不到85Hz
如果安装后启动X后没有85Hz.
修改xorg
代码:
sudo gedit xorg.conf
重点是这一段
代码:
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 30.0 - 100.0
VertRefresh 50.0 - 120.0
Option "DPMS"
EndSection
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 30.0 - 100.0
VertRefresh 50.0 - 120.0
Option "DPMS"
EndSection
里面的
代码:
HorizSync 30.0 - 100.0
VertRefresh 50.0 - 120.0
VertRefresh 50.0 - 120.0
可用通过查看显示器说明书得知正确的横扫和纵扫频率.
或者通过不断的实验, 直到重启X后, 频率为85Hz
2. 开启3D特效(compiz)后标题栏消失(compizconfig 选项里已经选上了 “窗口装饰”)
nvidia驱动用过几年都知道, 这种情况一般不会出现, 但会随着驱动更新反复出现.
代码:
sudo
nvidia-xconfig --add-argb-glx-visuals -d 24
sudo nvidia-xconfig --add-argb-glx-visuals --composite
sudo nvidia-xconfig --add-argb-glx-visuals --composite
3. CRT分辨率过低, 过高
编辑xorg.conf
在修改下面的一段
代码:
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
中的分辨率
代码:
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
修改后分辨率仍然过低, 或者没有这一段(很多时候在xorg中没有)
修改
代码:
HorizSync 30.0 - 100.0
VertRefresh 50.0 - 120.0
VertRefresh 50.0 - 120.0
4. 图形化修改方法
注意此方法对刷新率过低无效, 对分辨率过低无效
代码:
sudo
nvidia-settings
3. 使用开源nouveau驱动
安装
代码:
sudo aptitude install xserver-xorg-video-nouveau
1. 不使用KMS
1.1 不使用xorg.conf
代码:
sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
1.2 使用xorg.conf
由于官方驱动和nouveau驱动的xorg.conf现在是兼容的, 只需把xorg.conf中的
代码:
Driver "
nvidia"
改成
代码:
Driver "nouveau"
如
代码:
Section "Device"
Identifier "Device0"
# Driver " nvidia"
Driver "nouveau"
VendorName " NVIDIA Corporation"
EndSection
Identifier "Device0"
# Driver " nvidia"
Driver "nouveau"
VendorName " NVIDIA Corporation"
EndSection
然后可能还需要修改纵横扫, 因为可能显示器的分辨率和刷新率有问题.
真实奇怪, 两种驱动的纵横扫居然不一样.
代码:
HorizSync 30.0 - 100.0
VertRefresh 50.0 - 120.0
VertRefresh 50.0 - 120.0
登出
2. 使用KMS
CRT最好不要用, 因为xorg.conf不需要, 也没有用了. 不能修改刷新率了.
a 晚启动
在
代码:
/etc/modprobe.d/modprobe.conf
中添加一行
代码:
options nouveau modeset=1
本人死前, 不, 是用ati之前用的是nvidia gf2. 写下这篇文章作为纪念.
不是我们不支持ATI, 是ATI不支持我们!
参考:
[分享]在内核升级后自动安装nvdia驱动