Fedora 17 安裝顯示卡驅動正確方法(糾正網上的一個方法 —— 因此為原創 + 轉載)
臺試機因為硬體不是很好。所以,我讓桌上型電腦從 Ubuntu 回到了 Fedora 陣營中去。安裝了到現在為止最新發行版: Fedora 17。但是,一直沒有安過官方驅動,所以——嘿嘿,忘記如何安了。上網看了一篇文章,發現還不錯,但是有一個關鍵地方是錯誤的,所以我給糾正過來,並決定發個糾正好且成功的方法糾正文。而且,本少還添了一些油,加了一點醋,招了花,惹了草,搶了人,偷了車。。。好了,不瞎說了,不然警察叔叔就會認為我是採花大盜,在小黑室關幾天。
好了,我現在就把我自己的方法寫出來,並給出錯誤點——其實就只有一行不一樣,其它全一樣。。。
首先,我們先要做一下準備工作:
1、通過yum安裝dkms,kernel-devel,kernel-headers
# yum install dkms kernel-PAE kernel-PAE-devel kernel-PAE-headers //kernel-PAE-headers 這個沒有可以不裝,但一般沒有。這裡主要是用於新核心繼承
2、阻止kernel載入nouveau模組
先備份原檔案(良好的習慣):
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg_20121004
之後修改:
# vi /boot/grub2/grub.cfg
修改在最前頭的,除核心版本號(紅字)不一樣的如下行:
linux /vmlinuz-3.5.4-2.fc17.i686.PAE root=UUID=284023d5-52a1-40fb- 972b-3bed2872eafc ro SYSFONT=False rd.lvm=0 rd.dm=0 LANG=zh_CN.UTF-8 KEYTABLE=us rd.md=0 rd.luks=0 rhgb quiet
在你要安裝顯示卡驅動的kernel行的末尾加上 3 rdblacklist=nouveau
也就是改成:
linux /vmlinuz-3.5.4-2.fc17.i686.PAE root=UUID=284023d5-52a1-40fb-
972b-3bed2872eafc ro SYSFONT=False rd.lvm=0 rd.dm=0 LANG=zh_CN.UTF-8 KEYTABLE=us rd.md=0 rd.luks=0 rhgb quiet 3 rdblacklist=nouveau
還要記下紅字的那一行的資訊,下面安裝顯示卡驅動時要用的。
3.修改/etc/modprobe.d/blacklist.conf
同理,要先備份檔案:
cp /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf_20121004
之後修改:
將nouveau拉入黑名單,也就是在整個檔案末行,新增一行 blacklist nouveau。
4 . 解除selinux阻止載入nvidia驅動模組,且禁用selinux
備份:
cp /etc/selinux/config /etc/selinux/config_20121004
然後修改:
#vi /etc/selinux/config
將檔案內容中的 SELINUX=XXX 改為 SELINUX=disabled
5、下載顯示卡驅動
到 NVIDIA 官網上下載。如何下載,就不用我說了吧(右擊下載,不然將會打來原始碼的,而且最後把副檔名改為 .run。系統可能會自作主張改成 .bin)。
我把檔案下載到了:/home/yangzhencheng/NVIDIA-Linux-x86-304.51.run
原作者說,最好修在英文路徑下,中文會有點彆扭。具體如何彆扭,我就不知道了。如果有心人,可以試試。
好了,現面要安裝了。
首先,我們要重啟計算機:
#reboot ——個人感覺這樣快點。。。
重啟後,直接就進入到了是命令列模式。我們用 root 使用者來登入,以免出現別的問題。
好了,現在我們還要修改一個檔案:
#vi /etc/modprobe.d/blacklist.conf
進去後,將 blacklist nvidiafb 前加一個“#”,來註釋掉它,如:#blacklist nvidiafb
儲存後,我現回到命令列中去。
我們現在要做得就是安裝了。
進入到我們下載 Nvidia 顯示卡驅動的地方。
我們現在開始安裝了。
執行如下命令:
# sh NVIDIA-Linux-x86-295.71.run --kernel-source-path /usr/src/kernels/3.5.4-2.fc17.i686.PAE
大家是否發現了不同。
就是原來文章中的 ./,我生生地改成了 sh。對,就是這裡。當時我這還不明白,為什麼要用 ./ 。這也不是編譯好的檔案。最後,我才明白,原來作者打錯了。。。
還有一點,也就是紅字的區域。大家還記得我上面讓大家讓得那個紅字。對,這裡就要用到那個紅字了。也就是對應你自己的核心。
好了。執行這行命令後,只要不 Error。見到 Accept 就點,見到 Yes 就選。請不要客氣——因為想安就不要客氣。計算機是沒法子和你婉轉的。人家是直來直去的東北大漢。
全部完成後,我們再最後改一個檔案——折騰半天了,這真得是最後要改的了。
好,我們在命令列下執行:
# vi /boot/grub2/grub.cfg
修改剛才我們改過的那一行。現在這一行的樣子是這個樣子的:
linux /vmlinuz-3.5.0-2.fc17.i686.PAE root=UUID=284023d5-52a1-40fb- 972b-3bed2872eafc ro SYSFONT=False rd.lvm=0 rd.dm=0 LANG=zh_CN.UTF-8 KEYTABLE=us
rd.md=0 rd.luks=0 rhgb quiet 3 rdblacklist=nouveau
我們把那個上面新加入字元中的3去掉(紅字那個),就變成了:
linux /vmlinuz-3.5.0-2.fc17.i686.PAE root=UUID=284023d5-52a1-40fb- 972b-3bed2872eafc ro SYSFONT=False rd.lvm=0 rd.dm=0 LANG=zh_CN.UTF-8 KEYTABLE=us
rd.md=0 rd.luks=0 rhgb quiet rdblacklist=nouveau
好了,我們現在重啟。。。
一切 OK,現在我們的計算機就用上了 NVIDIA 的顯示卡驅動。不信,你可以通過以下命令來檢視:
#lsmod | grep nouveau
沒有輸出,然後再:
#lsmod | grep nvidia
如果你安得桌面是 KDE,就更好辦了,你檢視一下 KDE 提供的“系統資訊”即可。我的是:
總之,感覺的確比較麻煩,但是沒有辦法的。