Dell G3 pro ubuntu16.04+Win10雙系統,nvidia顯卡驅動,nvidia docker測試,問題記錄


此博客主要是問題記錄,暫不包含完整流程


Ubuntu16.04安裝

1 檢測不到系統硬盤

原因是系統默認使用RAID的SSD驅動方式,而Ubuntu並不支持

解決:需要在BIOS中把SSD operation改爲ACHI。Dell官方給了標準的雙系統安裝方式,解決了把RAID給成ACHI後WIN10無法正常引導的問題。


Nvidia顯卡驅動

顯卡型號爲GTX 1660TIMQ

查找合適的驅動,430.09往後的版本似乎都支持,

截止當前Ubuntu apt-get 安裝的nvidia驅動最新是430.24,是支持的。

然而按照先禁用nouveau再apt-get安裝驅動的方式(參考其他博客如https://blog.csdn.net/max_loo/article/details/81304949),還是會有很多問題

 

1 直接apt-get 安裝的驅動會導致系統進入"low-graphics mode"

原因:不明。在進入命令行界面後( ctrl+alt+(F1-F6) ),輸入nvidia-smi,輸出了正確的顯卡信息,說明顯卡驅動正確安裝了,但Ubuntu系統檢測不到nvidia顯卡。

不小心進入這一模式的,可以在命令行界面刪除nvidia驅動,就可以恢復正常

sudo apt-get purge nvidia-*

解決:nvidia官網下載對應版本的nvidia驅動,在命令行界面安裝(https://blog.csdn.net/max_loo/article/details/81304949

系統可以正常進入,輸入nvidia-smi能輸出顯卡信息。然而系統使用的仍然是intel集成顯卡。

nvidia顯卡能否正常使用有待進一步驗證。

 

2 裝NVIDIA418.88.sh後,屏幕分辨率變小,並且無法改變

原因:nvidia驅動安裝時會更新x文件,這是改變了屏幕分辨率的罪魁禍首,好在nvidia會自動備份x文件

解決:進入 /etc/X11 下找到 xorg.conf 文件,應該有nvidia備份的該文件,命名類似與xorg.conf.backup,換回來吧。

也用用xrandr添加新“屏幕”的方式,但是這種方式相當於每次都執行一遍添加虛擬屏幕的命令,很膈應。另外在登錄界面的分辨率依然是很低的分辨率,因此不採用。


Docker使用nvidia

1 在運行docker鏡像並使用nvidia顯卡時,出現報錯:

docker: Error response from daemon: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/97b8b155759b7e79892eb809697d0ad09d2f256c49e08d4132315e776519a972/log.json: no such file or directory): fork/exec /usr/bin/nvidia-container-runtime: no such file or directory: unknown.

原因:在NVIDIA驅動,docker版本均無誤的情況下,應是沒有安裝nvidia-docker2,輸入

dpkg -l '*nvidia*'

若沒有nvidia-contain和nvidia-docker2則確認沒有安裝nvidia-docker2,正確安裝後的輸出示例如下:

+++-==============-============-============-=================================
un  nvidia-304     <none>       <none>       (no description available)
un  nvidia-340     <none>       <none>       (no description available)
un  nvidia-384     <none>       <none>       (no description available)
un  nvidia-common  <none>       <none>       (no description available)
ii  nvidia-contain 3.1.2-1      amd64        NVIDIA container runtime
un  nvidia-contain <none>       <none>       (no description available)
ii  nvidia-contain 1.0.3-1      amd64        NVIDIA container runtime hook
un  nvidia-docker  <none>       <none>       (no description available)
ii  nvidia-docker2 2.2.1-1      all          nvidia-docker CLI wrapper
un  nvidia-legacy- <none>       <none>       (no description available)
un  nvidia-libopen <none>       <none>       (no description available)
un  nvidia-prime   <none>       <none>       (no description available)
un  nvidia-vdpau-d <none>       <none>       (no description available)

解決:參考https://github.com/NVIDIA/nvidia-docker/issues/686,安裝nvidia-docker2

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

# Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章