2024年3月28日发(作者:)
自己的笔记本是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
关闭没有使用的独显。关闭之后果然是好了,风扇不乱转了,耗电量也低了,但是又出问题了,在关机的
时候会出现一个error提示,好像是atoms什么的在1s内没响应,重复弹出,关机时要卡很久,大概十
几二十秒,无法忍受,看到一个用acpi_call来控制关闭独显的方法,同样会出现这样的现象。而且注销
或者采用别的方法重启X的时候也是会卡很久,当然不能忍受。于是又改为关集显,用独显。
终于,在ati出11.3驱动的时候,换上,打开双显卡,打开控制中心,竟然看到了显卡切换的选项,
何等的兴奋!但是改成intel显卡之后,重启,完全不能用3d,界面也很卡,fglxinfo,glxinfo都是提示
lib**.so too short,显卡切换不能用,只能看。于是等到了11.4驱动出来,想要安装,结果安装不上,在
编译的时候出错了,模块编译不出来。内核是2.6.38的,打了个补丁(catalyst-generator里的
2.6.38_),才能编译通过。也有提示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-****
与内核名相符即好。比如通过uname -a得到
代码:
Linux ***-1-0 2.6.32-5-amd64 #1 SMP Thu Nov 3 03:41:26 UTC 2011 x86_64
GNU/Linux
可以看出内核是2.6.32-5-amd64,那么安装头文件就是
代码:
sudo apt-get install linux-headers-2.6.32-5-amd64
有朋友没安装头文件编译不成功,我补充这条命令,希望对大家有帮助。
第二步、sudo /path2ati***.run/ati***.run,运行此文件,如果是在图形界面中运行此文件,会弹
出一个图形界面的安装窗口,自己一步步点就行了。如果是在纯console下,则会提示要要回答Y/n,都
回答Y即可。
第三步(请看后面的补充)、这是要确定驱动是否正确安装,第二步后往往有人就以为驱动已经安
装好了,结果重启却发现并没有安装好,就是因为没用这第三步。细心的人会发现,在安装完后会有个提
示安装记录文件的语句。
代码:
cat /usr/share/ati/|less
如果编译成功的话,这里面会没有错误提示,但是会让运行
代码:
/lib/modules/fglrx/make_
如果没有运行这个命令,那么很有可能fglrx并没有安装,只是编译好了,这就会导致重启后一点显卡的
管理中心就重启x的情况。还有,如果有错误,也都是通过这个文件来查看的。
注意:如果之前有安装过ati闭源驱动,应先完全删除此驱动,否则会出现意想不到的问题。
代码:
sudo /usr/share/ati/ --force
强制删除驱动。
代码:
sudo rm -r /etc/ati
这个可以不删,但是删了更洁净,不删有可能出问题,可能性很小,但是我遇到过。
希望可以帮到同样为ati&&intel双显卡纠结的人。
补充:据说此驱动对于gnome3的面板花问题任然存在,不过如果是双显卡,在驱动装好后直接改用
intel的集显可能就不会有问题了。
再补充:如果没有进行第三步就一切正常了,那就更好,实际上在安装时ait的安装程序会 自动执行
make_,但是不知道为什么,我安装的时候确实有这种情况:不进行第三步,重启后没有问题,
设为intel显卡后重启,一点控制中心就重启X,在终端运行amdccc也一样,所以如果有遇到此情况的
就做一下第三步,没什么情况的就不必了。
发布评论