前言
之前從 14.04 升級成 16.04 後沒有特別檢查 GPU Driver,後來需要用到才發現原來我少了一些 library
這篇記錄下要如何在 Ubuntu 安裝 NVIDIA GPU 的驅動程式,還有啟用 Cuda
NVIDIA GPU driver
到官網找到對應顯卡跟作業系統的驅動程式
https://www.geforce.cn/drivers
先選系列,再選該系列的型號,然後再來選擇作業系統,像我的 Ubuntu 系統是 x86-64,就選擇 Linux 64-bit,下載最新的版本,我是下載 NVIDIA-Linux-x86_64-440.59.run
執行 run 前先解除安裝舊版本的驅動程式以防萬一
1 | sudo apt-get remove --purge nvidia* |
安裝可能需要的依賴
1 | sudo apt-get update |
Nouveau
執行 run 檔時,NVIDIA 的安裝程式會偵測可能的問題點,這時候應該會跳出失敗
假如沒有禁用 Nouveau 驅動的話,安裝程式會要求使用者手動操作,或是選擇讓他幫你在 /etc/modprobe.d/
底下建立好 nvidia-installer-disalbe-nouveau.conf
檔
1 | // nvidia-installer-disalbe-nouveau.conf |
在 terminal 下 reboot 重新開機後就會套用這個 conf
重開後的畫面解析度會有點怪怪的,等安裝完驅動就正常了
X-service
一般來說要先進入終端機模式關閉 Ubuntu 的圖形介面,也就是關閉 X-service,沒有關閉的話安裝程式也會再次失敗提醒你
但其實在執行安裝程式時可以下 option --no-x-check
來忽略這個檢查
選擇不忽略要手動關閉的話,就要按住 CTRL + ALT + F1 進入 tt1 終端來關閉
進入 tt1 後會要求你再輸入一次使用者帳密登入系統,登入完後打
1 | sudo service lightdm stop |
如果沒有效果的話將 lightdm
換成 systemctl
安裝
下一步就是安裝
變更執行檔的權限然後用 root 執行
1 | chmod 755 NVIDIA-Linux-x86_64-440.59.run |
如果前面沒有選擇忽略 X-service check,這時候會是在 tt1 模式下(也就是整個螢幕都是終端機模式),一樣可以進行這步,只要打指令然後重新開機就好了
驗證
重開機後,下以下指令驗證驅動程式是否安裝成功
1 | nvidia-smi |
如果有列出 GPU 的資訊表格表示安裝成功,沒有成功就再從清除舊資料那一步重頭開始
安裝 CUDA
到官網
https://developer.nvidia.com/cuda-downloads
選擇對應的 CUDA 版本,像我的話就是
- Linux x86_64
- Ubuntu 16.04
- installer Type 我選擇 runfile
選完後網頁會挑出安裝指令,複製 wget
那行指令照著抓下來就可以了
抓下來後一樣用 root 權限執行 run 檔,這時候會跳出安裝選項,記得把 Driver 的選項的勾勾拿掉,因為已經裝好驅動了,如果再選擇安裝 Cuda 安裝程式提供的驅動會有問題
這時候應該就能安裝成功了
更詳細的 Installation Guide 可以參考官方文件
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/#axzz4WNL7OgLr