您的位置:首页 > 其它

Ubuntu 12.10 下安装 nvidia 显卡驱动的问题

2013-04-24 23:17 615 查看
和所有 Linux 发行版一样,Ubuntu 默认使用 nouveau 开源驱动。话说这个驱动还不错的,甚至能够支持一些三维游戏。不过,既然有更好的 nvidia 官方驱动,弃之不用也说不过去。虽然官方驱动是闭源的,但既然买了 nvidia 的显卡,当然就有使用这个软件的权利。

简要的说,从 Ubuntu 11.10 开始,直到 Ubuntu 12.04,运用官方驱动是很简单的事,无论从“软件中心”用鼠标点击安装,还是用一条命令 sudo apt-get install nvidia-current 来安装,都是简单惬意的事。

然而,在 Ubuntu 12.10 下,出问题了……安装完毕之后,重启,登录,得到了一个没有任何菜单、工具条的纯桌面。好在可以用 Ctrl-Alt T 来启动一个终端——我知道 Ctrl-Alt F1 之类的快捷键,但是,由于中文 locale 设置,在 tty 终端那里,你会得到大量的菱形,它们原本应该是汉字——既然有指挥电脑的地方,那么还有救,呵呵。当年在 Fedora 下一直是手工安装 n 卡驱动的,那个安装过程……很明显就是一个编译的过程!谷歌了一下,果然,需要 kernel 的源代码和头文件!

如果你已经走到了这一步,如下操作(以 curent 版为例,如果你安装的其它版本,比如 current-updates 之类,请自行更改命令)。# 开头的行是注释,请注意 Ubuntu 不允许 root 登录,不会有 root 提示符的(刚写完就想起来,回来修正一下,想得到 root 提示符也很简单的:sudo bash)。

# 首先卸载驱动

$ sudo apt-get remove --purge nvidia-current

(卸载NVIDIA驱动(如果你还没装NVIDIA就不用管) - 三个命令选一个,取决于你已经安装的驱动版本 (sudo apt-get remove nvidia-current or sudo apt-get remove nvidia-current-updates or sudo apt-get remove nvidia-experimental-304).)

# 安装 kernel 源代码、头文件

$ sudo apt-get install linux-source linux-headers-generic

# 重新安装驱动

$ sudo apt-get install nvidia-current

# 通常你会用到的,建议把这个也装上

$ sudo apt-get install nvidia-settings)

(重装NVIDIA驱动 (sudo apt-get install nvidia-current-updates).)这里我是安装的这个)

#重启

$ sudo reboot

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

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

8. 重启。大功告成!

注:有可能第一次重启后不管用,再重启一次就可以了。

最后由
noches 编辑于 2010-05-04 21:51,总共编辑了 4 次
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐