【最全装机实测记录】Win10和Ubuntu18.04下配置深度学习环境CUDA10+休眠无法唤醒

本文主要是记录自己装机过程,之前一直在用Ubuntu 16.04

1. Ubuntu18.04安装和配置

  • 利用rufs软件配置Ubuntu18.04启动盘(强烈建议,其他的如UltraISO/Universal USB Installer会有些问题);
  • 按照默认流程,fat32格式化并制作ubuntu启动优盘;
  • 设置BIOS(开机时按BackSpace/Delete/F10/F12等键),将U盘设为第一启动盘;将安全启动Secure Boot是否设置为Disable,十分重要关乎后面驱动安装;安装完后再进入BIOS将UEFI引导项中,Ubuntu提到Win10前面,这样可以利用Ubuntu启动画面切换Win,反之则需要再配置windows boot manager(不建议);
  • 安装时(若重启卡死,则也可在启动时),按e编辑:‘quiet splash’--->'quiet splash nomodeset ',然后按F10继续引导系统;另外,安装ubuntu时,不建议安装第三方驱动;(nomodeset是设定为集显驱动,一般情况下只需安装时在此设置,不需更改grup;对于多块独立GPU的服务器,建议先拔掉GPU安装系统,否则可能会循环登录
  • 进入系统后(视情况而定
sudo gedit /etc/default/grub

#‘quiet splash’--->'quiet splash nomodeset '
  • 安装nvidia驱动必须禁用nouveau,所以加载nouveao到blacklist:(最新驱动已经可以实现自动禁用,可跳过)
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

##内容如下##
#blacklist nouveau
#options nouveau modeset=0
  • 重新生成内核initramfs:(重要)
sudo update-initramfs -u 
# 为保证禁用驱动成功,运行后重启系统,确保没有输出即可。
lsmod | grep nouveau

2. NVIDIA 驱动安装

 

配置准备:

  • 确认安装了gcc, make
gcc --version
  • CUDA和nvidia驱动编译安装需要内核头文件,所以
sudo apt-get install linux-headers-$(uname -r) 
  • 安装nvidia驱动必须禁用nouveau,同上可忽略,必须保证以下命令无输出
lsmod | grep nouveau

Ctrl+Alt+F1进入命令行并登陆,禁用gdm3或者lightdm,关闭X servers:

#########gdm3的禁用##############
sudo service gdm3 stop
#或者下面这个
sudo systemctl stop gdm3.service
#########lightdm的禁用##############
sudo systemctl stop lightdm
#或者下面这个
sudo service lightdm stop
  • 开始安装NVIDIA驱动,(如果使用CUDA自带的驱动,此步可以忽略)。区别就是CUDA安装方便但是没有提示可能会安装失败;
  • 建议单独安装显卡驱动,然后跳过2、3步骤,后期可在anaconda环境里自动配置适配于不同版本TF/PyTorch的CUDA。后期使用Anaconda进行Python和Cuda/Cudnn等版本的适配管理,搭配pycharm调试程序。
#如果要安装,按照下面命令来(集显加独显的必须加上--no-opengl-files ,很重要否则集显导致无法启动)
sudo ./NVIDIA-Linux-x86_64-378.13.run --no-opengl-files

安装提示基本是选肯定的,提示nvidia-xconfig时如果你的电脑还存在一个核显或者集显就选择不安装,反之选择安装

安装完毕后,输入以下命令,然后按Ctrl+Alt+F1回到桌面X图形界面

############gdm3启用##########
sudo service gdm3 start
##########lightdm启用#########
sudo systemctl start lightdm
# 或者下面这个
sudo service lightdm start
  • 检查/dev下是否存在nvidia*设备并且权限是0666,如果没有可以执行 nvidia-modprobe来创建这些设备,如果执行没有效果,请检查Secure Boot是否设置为Disable(见教程开头)
  • 如果已经存在,执行nvidia-smi,有类似如下输出代表nvidia驱动正常

【最全装机实测记录】Win10和Ubuntu18.04下配置深度学习环境CUDA10+休眠无法唤醒_第1张图片

3. 安装CUDA

********************

  • 下载CUDA 10.0,如图

【最全装机实测记录】Win10和Ubuntu18.04下配置深度学习环境CUDA10+休眠无法唤醒_第2张图片

  • 安装CUDA
sudo sh ./cuda_10.0.130_410.48_linux.run --no-opengl-libs

按q结束cuda的描述等,然后输入accept,然后是提示是否安装NVIDIA驱动,如果上面已经装了驱动就输入n,反之输入y;提示是否安装opengl时,一定输入n,然后提示是否安装nvidia-xconfig,如果你的电脑还存在一个核显或者集显就输入n,反之输入y(我们笔记本一般都是集显加独显,这里选n);下一个提示是是否安装CUDA Toolkit,输入y,后面的提示都是使用默认或者y了

安装完会显示哪些安装成功,哪些安装失败,一般都会没有问题的

  • 编辑/etc/profile,在最后添加如下内容,而后重启系统
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

# To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-10.0/bin
# To uninstall the NVIDIA Driver, run nvidia-uninstall

测试CUDA Toolkit安装是否正确

  • 终端输入nvcc --version,有相应信息输出即安装正确;
  • 终端输入cat /proc/driver/nvidia/version,相应信息输出即安装正确;
  • 运行cd ~/NVIDIA_CUDA-10.0_Samples;
  • 编译make,无错误便是安装完好
  • 接着运行 ./bin/x86_64/linux/release/deviceQuery,PASS
  • 接着运行 ./bin/x86_64/linux/release/bandwidthTest, PASS。

4. 安装cuDNN

  • 在cudnn-10.0-linux-x64-v7.4.2.24.tgz目录下运行终端,输入:
tar -xvzf cudnn-10.0-linux-x64-v7.4.2.24.tgz
cd cudnn-10.0-linux-x64-v7.4.2.24
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64
sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h /usr/local/cuda-10.0/lib64/libcudnn*

 

至此完成所有安装

  • 禁止附加驱动更新:

其他问题:Ubuntu开机无法直接进入图形界面——lightdm未启动

  1. 关闭用户图形界面
    sudo systemctl set-default multi-user.target
    sudo reboot

  2. 开启用户图形界面
    sudo systemctl set-default graphical.target
    sudo reboot


其他问题:Ubuntu休眠后无法唤醒(大坑还没填,请绕行!)

  • 解决办法:安装laptop-mode-tools工具包。

  • 1. 检查是否安装了grep laptop-mode-tools 工具包
dpkg -l | grep laptop-mode-tools
# 如果执行命令无结果输出,表示未安装(如果已安装,忽略第2步)

 

  • 2. 安装laptop-mode
sudo apt-get install laptop-mode-tools
# 安装完成后查看结果
  • 3.判断Laptop是否启用了laptop_mode模式

如果显示结果为0,则表示未启动,如果为非0的数字则表示启动了

  • 4.启动laptop_mode

修改配置文件/etc/default/acpi-support,更改 ENABLE_LAPTOP_MODE=true

直接在终端中输入 sudo laptop_mode start 启动了laptop_mode之后,在ubuntu挂起后,基本上就不会遇到无法唤醒的情况了

注:有些用户在acpi-support中并未找到 ENABLE_LAPTOP_MODE=true 被注释的项.看文件最后一行的提示

提示我们在/etc/laptop-mode/laptop-mode.conf 中进行配置

找到次文件查找 ENABLE_LAPTOP_MODE_ON_BATTERY、ENABLE_LAPTOP_MODE_ON_AC、ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED,即当用电池,外接电源,合上显示屏的时候是否启用 LAPTOP_MODE:全部设置为 1 就可以了。

启动laptop_mode并查看结果;

你可能感兴趣的:(配置,日志,Ubuntu)