2007年9月27日 星期四

Install nVidia VGA card driver in Ubuntu

自己之前在自己的notebook上安裝過數次Ubuntu,從6.06~7.04,所以深知ATI的顯示晶片在Linux上的支援度並不理想。之前就有聽說nVidia的卡就要好的多,所以這次利用空的HDD在我的desktop上安裝Ubuntu 7.04,不過似乎跟我想像的不太一樣,也是碰到不少麻煩。最後發現, 安裝nVidia顯示卡driver有兩大方式:
  1. 安裝套件庫內的driver:
    1. 這是最簡單的方式,可以使用synaptic或是在console視窗內使用apt-get來安裝。一般而言,最新的顯示卡是安裝nvidia-glx-new或是nvidia-glx;較舊的則是nvidia-glx-legacy。詳情可以參考:HOWTO: Latest NVIDIA drivers - Method 1
  2. 手動安裝官方driver: 套件庫裡的drvier雖然比較好安裝,但是由於版本比較舊,所以比較可能有問題,對於最新的顯示晶片(Geforce 7xxx,8xxx系列)的支援也可能比較不夠。個人在參考過HOWTO: Latest NVIDIA drivers - Method 2Installing NVIDIA Linux graphics drivers on recent distributions (FC, Ubuntu, etc)之後,大概發現只要完成幾個步驟就可以很輕鬆的安裝完成:
    1. 將需要的相關套件更新到最新版:
      sudo apt-get install linux-headers-generic build-essential gcc xserver-xorg-dev pkg-config
      ,其中linux-headers請根據安裝的kernel種類來安裝,如lowlatency的kernel就必須安裝linux-headers-lowlatency
    2. 移除目前安裝的nVidia driver:
    3. 修改/etc/default/linux-restricted-modules-common,確定有以下內容:
      DISABLED_MODULES="nv nvidia_new"
    4. 刪除以下檔案
      1. /etc/init.d/nvidia-glx
      2. /etc/init.d/nvidia-kernel
      3. /lib/linux-restricted-modules/.nvidia_new_installed
    5. sudo /etc/init.d/gdm stop
      按下Ctrl+Alt+F1切換到console mode,然後登入後輸入
    6. 以sudo執行下載的nVidia官方driver安裝檔,所有的選擇都選擇Accept或是Yes,除了要求連線下載符合目前kernel的預先編譯好的driver。(若是只是更新driver,則最後的修改xorg.conf檔的部份也可以選擇No)
    7. 完成安裝後,可以輸入
      sudo /etc/init.d/gdm start
      來重新啟動X-Window,或是重開機。若是安裝成功,則會看到X-Window的登入畫面。
    8. 進入X-Window之後,在console視窗輸入
      sudo gedit /usr/share/applications/NVIDIA-Settings.desktop
      ,然後填入以下內容之後存檔:
      [Desktop Entry]
      Name=NVIDIA Settings
      Comment=NVIDIA X Server Settings
      Exec=nvidia-settings
      Icon=
      StartupNotify=true
      Terminal=false
      Type=Application
      Categories=Application;System;
      ,然後就可以在「應用程式->系統」中找到nVidia的X server設定程式了(若是更新driver,則不需重複進行此步驟)
    9. 啟動nVidia X server設定程式,然後設定自己需要的設定
基本上需要注意的事項也是不少,不過整體來說還不算太難安裝,有一點必須注意的是,在安裝driver之前一定要關閉gdm,否則也會導致安裝失敗。
另外,有幾個常用的option可以設定在xorg.conf的Device or Screen區段內:
  1. Option "NoLogo" "true" ---- 關閉進入X-Window時顯示的nVidia logo畫面
  2. Option "AddARGBGLXVisuals" "true" ---- 避免在使用Compiz-fusion or Beryl時有視窗邊框消失的問題
  3. Option "Coolbits" "1" ---- 啟動超頻選項
更詳盡的Option設定,可以參閱nVidia官網上的資料

基本上,Nvidia對於Linux的支援真的是比ATI好太多了!透過AIGLX來跑Compiz-fusion的感覺就是不一樣,不但效率很好,也比較不吃resource。據說ATI也在開發支援AIGLX的driver,只是會是怎樣....很難想像啊...

沒有留言: