自己的笔记本是Y460,ati的hd5650独显和intel集显。现在是debian squeeze&&win7
双显卡问题一度让我头痛,曾经于最受不了的时候一气之下删了linux,当然后来又装上了。进入系统会自动识别到intel显卡并使用它,但是不会关掉ati独显,并且没有驱动,导致风扇呼啦啦的转个不停,温度很高,估计60度了吧。于是安装ati显卡驱动,版本还是10.x反正是不支持双显卡切换的。
重启,想看一下什么效果,结果迟迟未出现图形界面,没错,黑屏了。(原因是当时的内核还不支持双显卡(2.6.32刚开始的版本),直接进不了界面了,后面的内核就不会黑屏,只会出错,并进入低画质模式。)进bios关闭集显后,开机,能进入图形界面了,3D什么的也很好,但是实际上在linux里不需要很高的3d效能,至少我是这样的。ati的独显耗电量明显比集显高,温度也比用集显高,而且进win7如果不想经常调bios的话也只能用独显了,心里总是感觉有点憋屈。在2.6.34内核的时候,据说出来了显卡切换的功能。当时立马就编译内核,换上之后,通过控制/sys/kernel/debug/vgaswitchroo/switch文件来控制显卡的开关。打开双显卡通过
代码: 全选
echo OFF >/sys/sys/kernel/debug/vgaswitchroo/switch
终于,在ati出11.3驱动的时候,换上,打开双显卡,打开控制中心,竟然看到了显卡切换的选项,何等的兴奋!但是改成intel显卡之后,重启,完全不能用3d,界面也很卡,fglxinfo,glxinfo都是提示lib**.so too short,显卡切换不能用,只能看。于是等到了11.4驱动出来,想要安装,结果安装不上,在编译的时候出错了,模块编译不出来。内核是2.6.38的,打了个补丁(catalyst-generator里的2.6.38_console.patch),才能编译通过。也有提示kernel_lock(记不清了)函数未定义,编译不过的情况,原来是内核编译的时候默认是取消了全局锁的,要自己重新编译内核开启全局锁才行,这个就得怪ati更不上节奏了。总之是装上了,切换成intel集显,开机,很好,3d效果在,用起来不错,fglxinfo,glxinfo也不会出错了,但是还没有结束,用着用着就遇到了图形界面没响应的情况,比如在看土豆网看电影,看着看着,不知怎么的,突然真个界面卡住了,什么都动不了,但是电影的声音还在继续,alt+ctrl+fn也没用,界面一直卡着,只好重启了事。
终终于,11.5出来了,出来的这么早,而且从linuxtoy上看到,这个版本的驱动解决了xserver僵死的问题,改善了显卡切换,所以特意换上了此驱动,到如今为止用了一天多了,换成intel显卡,温度低,耗电低,也没有出现小server僵死情况,十分完美,经过近一年的时间跨度,终于,我可以在linux下舒服的用双显卡切换了,虽然切换要重启X,但是我基本就在linux下只用intel集显,3d什么的都很好了。
上面是一些经历下面说说怎么做:
第一步、从官网上下载11.5驱动,不要上中文的amd官网,那个上面linux版的驱动竟然还是11.3,上英文版的官网(把那个地址栏中的*/cn/*换成*/us/*),下载过来是一个ati***.run文件。下载必要的编译环境,内核版本对应的头文件。sudo apt-get install linux-headers***,这个得自己用
代码: 全选
uname -r
代码: 全选
sudo apt-get install build-essential automake autoconf
代码: 全选
sudo apt-get install linux-headers-****
代码: 全选
Linux ***-1-0 2.6.32-5-amd64 #1 SMP Thu Nov 3 03:41:26 UTC 2011 x86_64 GNU/Linux
代码: 全选
sudo apt-get install linux-headers-2.6.32-5-amd64
第二步、sudo /path2ati***.run/ati***.run,运行此文件,如果是在图形界面中运行此文件,会弹出一个图形界面的安装窗口,自己一步步点就行了。如果是在纯console下,则会提示要要回答Y/n,都回答Y即可。
第三步(请看后面的补充)、这是要确定驱动是否正确安装,第二步后往往有人就以为驱动已经安装好了,结果重启却发现并没有安装好,就是因为没用这第三步。细心的人会发现,在安装完后会有个提示安装记录文件的语句。
代码: 全选
cat /usr/share/ati/fglrx-install.log|less
代码: 全选
/lib/modules/fglrx/make_install.sh
注意:如果之前有安装过ati闭源驱动,应先完全删除此驱动,否则会出现意想不到的问题。
代码: 全选
sudo /usr/share/ati/fglrx-uninstall.sh --force
代码: 全选
sudo rm -r /etc/ati
希望可以帮到同样为ati&&intel双显卡纠结的人。

补充:据说此驱动对于gnome3的面板花问题任然存在,不过如果是双显卡,在驱动装好后直接改用intel的集显可能就不会有问题了。
再补充:如果没有进行第三步就一切正常了,那就更好,实际上在安装时ait的安装程序会 自动执行make_install.sh,但是不知道为什么,我安装的时候确实有这种情况:不进行第三步,重启后没有问题,设为intel显卡后重启,一点控制中心就重启X,在终端运行amdccc也一样,所以如果有遇到此情况的就做一下第三步,没什么情况的就不必了。