1. 程式人生 > >Linux安裝NVIDIA顯示卡驅動的正確姿勢

Linux安裝NVIDIA顯示卡驅動的正確姿勢

Linux安裝NVIDIA顯示卡驅動的正確姿勢

可能想玩Linux系統的童鞋,往往死在安裝NVIDIA顯示卡驅動上,所以這篇文章幫助大家以正常的方式安裝NVIDIA驅動。

本文將介紹四種NVIDIA驅動安裝方式。具體選擇需要根據你的情況而定。

  • 使用標準Ubuntu倉庫進行自動化安裝
  • 使用PPA倉庫進行自動化安裝
  • 使用官方的NVIDIA驅動進行手動安裝

什麼是nouveau驅動?

nouveau,是一個自由及開放原始碼顯示卡驅動程式,是為Nvidia的顯示卡所編寫,也可用於屬於系統晶片的NVIDIA Tegra系列,此驅動程式是由一群獨立的軟體工程師所編寫,Nvidia的員工也提供了少許幫助。

該專案的目標為利用逆向工程Nvidia的專有Linux驅動程式來創造一個開放原始碼的驅動程式。

所以nouveau開源驅動基本上是不能正常使用的,效能極低,所以網上有很多人都在罵:乾死黃仁勳!!

這裡寫圖片描述

想了解歷史的可以去看看這篇知乎,騰訊和AMD是linux的罪人嗎?

好了不扯了,正式開始講安裝把!

檢測NVIDIA驅動是否成功安裝

  1. 使用nvidia-setting命令
nvidia-setting

終端執行這個命令會調出NVIDIA的驅動管理程式,如下:

這裡寫圖片描述

如果出現這個介面可以看到 NVIDIA Driver Version:390.48,這就代表nvidia-setting安裝正常。

  1. 使用nvidia-smi命令測試

英偉達系統管理介面(NVIDIA System Management Interface, 簡稱 nvidia-smi

)是基於NVIDIA Management Library (NVML) 的命令列管理元件,旨在(intened to )幫助管理和監控NVIDIA GPU裝置。

nvidia-smi

執行這條命令將會打印出當前系統安裝的NVIDIA驅動資訊,如下:

這裡寫圖片描述

我們可以看到我們顯示卡的型號,我的是GTX 960M,包括視訊記憶體大小都可以看見。

  1. 系統資訊檢視

這一步不重要,因為有時候系統資訊裡面顯示的可能會有誤,只顯示集顯不顯示獨顯的情況。

比如我的就沒有顯示出獨顯,如下:

這裡寫圖片描述

這裡面不顯示沒有關係,可以略過。

  1. 命令列搜尋集顯和獨顯

開啟終端執行以下命令:

lspci | grep VGA     # 檢視整合顯示卡
lspci | grep NVIDIA  # 檢視NVIDIA顯示卡

這裡寫圖片描述

如果都能搜尋到說明正常。

檢視nouveau是否啟動執行可以執行下面命令:

lsmod | grep nouveau

沒有返回代表沒有執行。

集顯與獨顯的切換

當我們需要切換獨顯與集顯的時候,一般就是外出的時候,想節省電量,增長待機時間。下面講解兩種切換方式。

  1. 使用nvidia-setting切換

終端執行nvidia-setting,在彈的介面中選擇獨顯與集顯:

這裡寫圖片描述

  1. 命令列切換

NVIDIA提供了一個切換顯示卡的命令:

sudo prime-select nvidia # 切換nvidia顯示卡
sudo prime-select intel  # 切換intel顯示卡
sudo prime-select query  # 檢視當前使用的顯示卡

這裡寫圖片描述

注意: 每一次切換顯示卡都需要重新啟動電腦才能生效

使用標準倉庫進行自動化安裝

在安裝的發行版中,如 ubuntu, Linux Mint等,找到附加驅動管理軟體,下面是Linux Mint介面:

這裡寫圖片描述

選擇推薦的驅動安裝,點選應用更改,等待下載然後重啟即可。

這種安裝方式有如下缺點

  1. 如果你的顯示卡比較新可能會出現安裝低版本的NVIDIA驅動而造成即可安裝完成,但是並沒有真正安裝成功,可能會出現迴圈登入,關機宕機等等原因。

  2. 當你更換驅動的時候可能原有的NVIDIA驅動刪除不乾淨。

當然這種方式也是有優點的:

  1. 不需要手動禁止nouveau
  2. 操作方便

可能有的童鞋還使用過命令列的方式安裝:

sudo apt-get install nvidia*

如圖:

這裡寫圖片描述

這種方式安裝同樣也是使用ubuntu官方源的形式安裝的,你可以選擇不同的驅動版本來安裝,但是本質上和標準倉庫進行自動化安裝是一樣的。

其實ubuntu自帶命令列版本安裝工具ubuntu-drivers,終端輸入:

ubuntu-drivers devices   # 查詢所有ubuntu推薦的驅動

這裡寫圖片描述

這路我是有一個推薦安裝的驅動,那就是nvidia-driver-390,明顯我已經安裝完成了。

然後就可以使用下面一條命令安裝所有推薦的驅動程式:

sudo ubuntu-drivers autoinstall

安裝完成後重啟就可以了,這裡要注意,這種安裝方式和驅動管理器軟體安裝的效果是一樣的,就是一個是UI版本,一個是命令列版本。

使用PPA倉庫進行自動化安裝

使用圖形驅動程式PPA儲存庫允許我們安裝NVIDIA beta驅動程式,這有可能會出現相容性的問題,但是有些時候必須使用這種方式,比如顯示卡比較新,使用上面所講的方式檢測驅動的安裝情況,如果不正常那麼只能使用這種方式安裝最新的NVIDIA驅動。

  1. 新增PPA到我們的系統:
sudo add-apt-repository ppa:graphics-drivers/ppa

更新系統源:

sudo apt update

此時我們就可以下載最新的NVIDIA驅動了:

安裝的方式有以下三種,其實前面已經講過,這裡總結一下:

  • 附加驅動管理軟體
  • sudo apt-get install nvidia-xxx
  • ubuntu-drivers方式

這三種都可以,選擇一個版本安裝,然後重啟即可。

使用官方的NVIDIA驅動進行手動安裝

這種安裝方式我認為是比較野蠻的,也是最正規,最原始的的方式,當然難度最高的。你可以來挑戰一下!!!!

1. 檢視當前電腦的顯示卡型號

lshw -numeric -C display

執行完畢後我的顯示卡型號為 GTX 960M,如下圖:

這裡寫圖片描述

2. 下載NVIDIA官方驅動

到NVIDIA的官方驅動網站下載對應顯示卡的驅動程式,下載後的檔案格式為run

下載好之後放到使用者目錄下,等下後面會用到。

3. 刪除原有的NVIDIA驅動程式

如果你沒有安裝過,或者已經解除安裝,可以忽略:

sudo apt-get remove –purge nvidia*

4. bios禁用禁用secure boot,也就是設定為disable

如果沒有禁用secure boot,會導致NVIDIA驅動安裝失敗,或者不正常。

5. 禁用nouveau

開啟編輯配置檔案:

sudo gedit /etc/modprobe.d/blacklist.conf

在最後一行新增:

blacklist nouveau

這一條的含義是禁用nouveau第三方驅動,之後也不需要改回來。

由於nouveau是構建在核心中的,所以要執行下面命令生效:

sudo update-initramfs -u

6. 重啟

reboot

重啟之後,可以檢視nouveau有沒有執行:

lsmod | grep nouveau  # 沒輸出代表禁用生效

7. 停止視覺化桌面:

為了安裝新的Nvidia驅動程式,我們需要停止當前的顯示伺服器。最簡單的方法是使用telinit命令更改為執行級別3。執行以下linux命令後,顯示伺服器將停止,因此請確保在繼續之前儲存所有當前工作(如果有):

sudo telinit 3

之後會進入一個新的命令列會話,使用當前的使用者名稱密碼登入

8. 安裝驅動

給驅動檔案增加可執行許可權:

sudo chmod a+x NVIDIA-Linux-x86_64-390.48.run

然後執行安裝:

sudo ./NVIDIA-Linux-x86_64-390.48.run –no-opengl-files

安裝完成後重啟即可,記得驗證是否安裝成功,參考前面所講。

–no-opengl-files 引數必須加否則會迴圈登入,也就是loop login

引數介紹:

  • –no-opengl-files 只安裝驅動檔案,不安裝OpenGL檔案。這個引數最重要
  • –no-x-check 安裝驅動時不檢查X服務
  • –no-nouveau-check 安裝驅動時不檢查nouveau
    後面兩個引數可不加。

注意:

  • 安裝CUDA時一定使用runfile檔案,這樣可以進行選擇。不再選擇安裝驅動,以及在彈出xorg.conf時選擇NO

到此NVIDIA的安裝方式講解完了。。。。

END