2009年6月15日 星期一

整死人的 ATI 顯示晶片驅動程式

隋棠 ATi Showgirl 5631
ATI的Show Girl都很漂亮,當年隋棠也是其中之一。但為什麼ATI的驅動程式這麼難搞呢?


自從將近三年前,我因為年幼無知買了一台採用 ATI 顯示晶片加上 Broadcom 無線網路晶片的 Compaq(HP)筆記型電腦後,就註定了每逢安裝 Linux 時的悲慘命運。這台型號是 Presario B1966TU 的筆電,主機板上內建 ATI Radeon Xpress 200M 晶片(後來我才搞清楚原來這不叫做獨立顯卡 XD)

剛剛閒來無事(謎之音:不是正在上班嗎?)把用得好好的 Ubuntu 8.10 網路升級成 9.04,結果問題就來了。安裝完成之後,很開心地重新啟動,說時遲那時快,只見螢幕一花,在短暫的疊影跳動之後,畫面就凝固陷入一片死寂!連登入畫面都沒見著。

好吧。看情況九成是來自惡名昭彰的 ATI 顯卡。好久沒搞過這些硬體驅動相容問題了,先咕狗看看。確實已經有很多先進討論過了,也有親切的高手提供了詳細的故障排除步驟,果然Ubuntu 正體中文論壇才是王道啊。不過在依樣畫葫蘆之前,我還是決定多找點資料了解一下。

非官方ATI Linux驅動程式Wiki就有提到相關的議題,寫得還蠻仔細的。我在這篇Ubuntu Jaunty 安裝指南的文章中,找到了我要的答案:

基本上,要在Ubuntu 9.04(Januty)中安裝ATI顯示卡驅動程式,有以下幾種方法:

  • 標準的開源驅動程式:Ubuntu預設的驅動程式,穩定健全,但是3D能力慘不忍睹。但如果你用的是Radeon X1k或更早以前的ATI顯卡,那麼也沒別的選擇了。Ubuntu預設優先安裝這些開源驅動程式的其中之一:
    • vesa:普遍適用於各種顯示卡,相容性最高但是功能最少。
    • ati:只有表面上可以用來呼叫Radeon驅動程式。
    • radeon:可以驅動各種等級的Radeon硬體,對於比較新的型號還可以有一點兒3D效果。
    • radeonhd:適用於R520及其之後的型號。
  • 最新的開源驅動程式:這也是由X.Org開發維護的驅動程式,可以加入 https://launchpad.net/~tormodvolden/+archive/ppa 套件庫,然後安裝 xserver-xorg-video-radeonhd 套件。安裝後可能得修改 /etc/X11/xorg.conf 的內容,加入:
    Section "Device"
    Driver "radeonhd"
    EndSection

    這一段才會改用新的驅動程式。
  • 運用「硬體驅動程式」功能:從「系統」選單→「管理」→「硬體驅動程式」可以自動搜尋並安裝受版權限制的驅動程式,選擇ATI accelerated graphics driver即可。這裡使用的驅動程式不見得會是最新版,但經過Ubuntu認可應該是比較穩定。不知為何我的選單裡面並沒有顯示,可能是手動修改一些設定檔時弄掉了吧。
  • 第三方安裝器:就是用envy/jockey之類的輔助安裝程式囉。
  • 手動安裝驅動程式:直接去AMD(ATI)網站下載驅動程式或套件,手動進行安裝。
那我的問題是出在哪呢?簡單地說,ATI官方推出的Linux驅動程式9.5新版,已經不再支援較早期的ATI顯示卡,包括ATI Radeon 9500-9800、X300-X2100等系列,還有我的Xpress也赫然在列!(其實一點都不意外啦...)所以呢,這些舊款ATI顯卡只能使用原本的ATI Catalyst 9.3版驅動程式,才能正常運作。然而尷尬的是,9.3版並未支援 xorg-xserver 1.6,換言之根本無法安裝在Ubuntu 9.04中!我咧...

最後我決定開機時選擇recovery mode,然後在復原選單中選擇root:Drop to root shell prompt進入指令模式,然後依照hepha大大提供的指示,修整我的驅動程式以及 xorg.conf 設定,但是把Driver的設定值從「vesa」改成「radeon」。(在終端機文字指令模式時,發現執行指令的回應訊息有很多亂碼,又咕狗了一下才知道,應該先下export LANG=en指令,將語系改為英文,否則中文的指令回應訊息根本就顯示不出來。)

就這樣在一知半解的情況下,又恢復了正常開機進入圖形介面,播放影片也沒有問題。搞定!

2 意見:

Internet business at home automated system 提到...
網誌管理員已經移除這則留言。
hepha 提到...

我不是大大,我是跟你一樣用ati的苦命人q_q