Ubuntu16安裝Nvidia驅動(GTX1060顯卡)


歡迎訪問我的GitHub

https://github.com/zq2599/blog_demos

內容:所有原創文章分類匯總及配套源碼,涉及Java、Docker、Kubernetes、DevOPS等;

本篇概覽

  • 台式機是2018年購買的惠普暗隱精靈3代,顯卡GTX1060,本文記錄了此機器安裝Ubuntu 16.04.7 LTS,再安裝Nvidia驅動的過程;

  • 另外還有一些避坑的小結,如果您遇到了類似問題可以拿來參考;

純凈Ubuntu系統

  • 先安裝Ubuntu16 LTS桌面版

  • U盤安裝,我這里是惠普台式機,啟動時出現惠普LOGO的時候,多次點擊F10,進入bios,啟動順序選擇U盤啟動,然后在頁面指導下順利安裝Ubuntu系統

需要注意的地方

  • 網上很多安裝文檔中提到了要在BIOS設置中關閉secure boot,我這里沒有找到這個選項,所以就跳過了沒做,依然可以安裝成功,只是在安裝完驅動后的幾步操作必不可少,需要按照文章中的操作執行;

開啟遠程ssh

  • 登錄進入Ubuntu桌面,打開控制台,執行以下命令,安裝ssh服務:
sudo apt-get install openssh-server
  • 啟動ssh服務
sudo service ssh start
  • 接下來的操作,我全都是從另一台電腦ssh遠程連接到這個Ubuntu16電腦上操作的

換源

  • 備份:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bk
  • 修改/etc/apt/sources.list為以下內容:
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

准備工作

  • 刪除舊的驅動
sudo apt-get remove --purge nvidia*
  • 屏蔽開源驅動nouveau,首先創建新文件:
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
  • 添加的內容如下:
blacklist nouveau
options nouveau modeset=0
  • 更新上述配置:
sudo update-initramfs -u
  • 此時執行命令lsmod | grep nouveau還可以看見以下內容,證明剛才的配置還沒有生效:
will@ubuntu-hp:~$ lsmod | grep nouveau
nouveau              1712128  4
mxm_wmi                16384  1 nouveau
i2c_algo_bit           16384  1 nouveau
ttm                   106496  1 nouveau
drm_kms_helper        172032  1 nouveau
drm                   401408  7 drm_kms_helper,ttm,nouveau
wmi                    24576  4 hp_wmi,wmi_bmof,mxm_wmi,nouveau
video                  45056  1 nouveau
  • 為了使剛才的配置生效,請立即重啟電腦sudo reboot

  • 重啟后再次ssh登錄,再執行命令lsmod | grep nouveau已經看不見內容了,證明剛才的配置已經生效;

安裝驅動

  • 添加官方ppa源
sudo add-apt-repository ppa:graphics-drivers/ppa
  • 更新
sudo apt-get update
  • 查看推薦驅動:
ubuntu-drivers devices
  • 選擇驅動后邊有(recommended)字樣的,如下圖紅框,我這邊是nvidia-430

在這里插入圖片描述

  • 開始安裝驅動,注意使用您自己看到的推薦驅動:
sudo apt-get install nvidia-430 nvidia-settings nvidia-prime
  • 遇到下圖,輸入回車:

在這里插入圖片描述

  • 遇到下圖,輸入八位數密碼,然后還會彈出確認密碼的頁面,繼續輸入同樣的密碼:

在這里插入圖片描述

  • 安裝完成后,重啟電腦,然后會有至關重要的一步,請務必要做好

重啟時的設置

  • 彈出提示時選擇Enroll MOK

在這里插入圖片描述

  • 選擇Continue

在這里插入圖片描述

  • 彈出的菜單選擇Yes

在這里插入圖片描述

  • 輸入剛才設定的密碼:

在這里插入圖片描述

  • 選擇reboot

在這里插入圖片描述

  • 重啟完成后,ssh登錄,執行命令nvidia-smi,如下所示,終於裝好了:

在這里插入圖片描述

安裝NCVV

  • nvcc是CUDA的編譯器,安裝命令如下:
sudo apt install nvidia-cuda-toolkit
  • 驗證:
will@ubuntu-hp:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015
Cuda compilation tools, release 7.5, V7.5.17

附錄一:反復重啟

  • 最開始用我用的是雙頭hdmi線,分別連接顯卡和顯示器,結果會不停的重啟,改用雙頭DP線后問題不再現

附錄二:nvidia-smi命令失敗

  • 輸入nvidia-smi檢查驅動,卻遇到以下問題:
will@ubuntu-hp:~$ nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
  • 執行ls /usr/src/,會看到名為nvidia-xxx的文件夾,如下圖紅框,我這里是nvidia-430.64

在這里插入圖片描述

  • 執行命令:
sudo dkms install -m nvidia -v 430.64

附錄三:反復要求輸入密碼

  • 此時在Ubuntu電腦上輸入密碼后,等待幾秒鍾又會回到輸入密碼的頁面,始終無法登錄

  • 這是因為GRUP中設定的是使用集成顯卡,而此時我們已經安裝了Nvidia驅動,所以無法再用集成顯卡驅動登錄了,需要修改設定

  • 此時ssh遠程連接是正常的,先連上去,打開文件/etc/default/grub,找到GRUP_CMDLINE_LINUX_DEFAULT這一行,將值修改成下圖紅框的內容:

在這里插入圖片描述

  • 重啟,順利登錄

附錄四:獲取Kernel source

  • 安裝linux-source:
sudo apt-get install linux-source
  • 執行上述命令時,注意下面紅框內的內容:

在這里插入圖片描述

  • 上述紅框中是4.4.0-210.242,因此接下來要執行的命令是(第三個小數點之后的內容不關注):
sudo apt-get install linux-headers-4.4.0-210-generic

你不孤單,欣宸原創一路相伴

  1. Java系列
  2. Spring系列
  3. Docker系列
  4. kubernetes系列
  5. 數據庫+中間件系列
  6. DevOps系列

歡迎關注公眾號:程序員欣宸

微信搜索「程序員欣宸」,我是欣宸,期待與您一同暢游Java世界...
https://github.com/zq2599/blog_demos


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM