Dell G3 搭建深度学习环境(Ubuntu16.04)

前言:
本机配置:
windows 10 64位系统
CPU:i5-8300H
显卡:GTX1050Ti
硬盘:C盘(Windows10系统盘)128G固态硬盘
D盘(DATA)1T机械硬盘

一、Ubuntu16.04 系统安装

1.1 准备阶段

Ubuntu16.04系统镜像文件下载地址:
官网:http://www.ubuntu.org.cn/download/alternative-downloads
清华镜像站:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/16.04.6/
制作U盘启动盘(U盘容量最好大于8G,制作方法可以参考这个 或自行百度)
UltraISO软碟通下载地址:https://cn.ultraiso.net/xiazai.html

在Windows 操作系统下面进行磁盘分区:(本人在1T的机械硬盘上压缩了100G)
右击【计算机】-> 点击【管理】-> 点击左侧【磁盘管理】-> 选中磁盘【压缩卷】->完成(无需格式化)

1.2 安装阶段
  1. 插入U盘开机按F2 键进入BIOS界面,然后只需要做两步:
    一是将Boot Security Mode 改为Disabled
    二是将系统启动优先项改为 U盘启动即可。
    点击 Apply ,再点击Exit (其他都不需要设置了)。

  2. 进入Ubuntu安装界面的,但是由于显卡存在冲突,需要再进一步对电脑进行设置
    按方向键选中Install Ubuntu,需要按“e”进入编辑界面,如果不进入,那么系统将无法顺利装成功,可能会卡在安装界面处,进不了分区界面。
    编辑如下:
    在splash后面(注意有空格,如果是‘’—‘’,则需要把这三个虚杠删除掉)再加上nouveau.modeset=0这个语句,然后按f10或者Ctrl+x,进入Ubuntu,这样就正式进入安装界面。

  3. 在安装界面-安装类型界面
    若直接选择第一项(安装Ubuntu,与windows Boot Manager共存)则省心安装成功。以下步骤跳过。
    若选择 ‘其他选项’ 点击继续就是对系统进行分区(可定制性强)
    对Linux系统进行分区(主要分为5个区),这一步非常重要!!!
    Dell G3 搭建深度学习环境(Ubuntu16.04)

  4. 系统分区
    选中刚才压缩卷,点击左下角的‘+’创建分区

  • swap 交换分区(分区类型:主分区;新分区位置:空间起始位置;用于交换空间。点击确定。)
    分区大小最好与电脑运行内存一样大,本人分配16G

  • / 根分区(分区类型:逻辑分区;新分区位置为空间起始位置;用于Ext4日志文件系统;挂载点 “/”。点击确定。)
    本人分配16G(大小随意,但是不能太小,也不要太大)

  • EFI系统分区(分区类型:逻辑分区;新分区位置为空间起始位置;挂载点 “/EFI系统分区”。点击确定。)
    本人分配:512MB(在256~512MB之间);
    由于Dell G3的系统模式本身为UEFI模式,我们直接在Ubuntu下直接创建另一个EFI系统分区就行

  • home分区(分区类型为逻辑分区;新分区位置为空间起始位置;用于Ext4日志文件系统;挂载点 “/home”。点击确定。)
    本人分配:35G(越大越好,用于存放用户文件等资料);

  • usr分区(分区类型为逻辑分区;新分区位置为空间起始位置;用于Ext4日志文件系统;挂载点 “/usr”。点击确定。)
    本人分配:43G(剩下的都给usr区);
    如下:盗的图>_< ,当时安装时没拍。有的拍的不清楚。
    Dell G3 搭建深度学习环境(Ubuntu16.04)

  1. 选择安装启动引导器的设备:
    若你选择默认的(显示1T的机械硬盘)直接安装即可。
    我当时看某博主博文选择了 与“EFI系统区”所对应的设备,就是刚刚分配的EFI系统分区所对应的设备是:/dev/sda6。然后出现5个分区之后,就点击确定进行安装,安装完之后,直接点击重启。结果出现引导失败(直接进入win10了),我试过用EasyBCD软件然而其无法引导UEFI的。从此进入了一条漫长的引导修复之路。

  2. 引导修复之路(若你也遇到以下问题,仅供参考)
    方法一:我查网上资料:安装了easyUEFI 安装博客说明,结果引导修复失败。
    方法二:于是我插入U盘启动盘,优先选择U盘启动,选择Try ubuntu without install
    进入Ubuntu系统后,打开终端,并输入以下命令:(确保网络稳定通畅,否则想死的心都有了)

$ sudo su
# sudo add-apt-repository ppa:yannubuntu/boot-repair
# apt-get update
# apt-get install boot-repair

在dash中搜索boot-repair。点recommand repair,之后会自动执行。
Dell G3 搭建深度学习环境(Ubuntu16.04)
好了重启。开机之后,会出现类似于这样一个界面,发现多了很多不必要的选项。
删掉多余的就好,执行以下命令

su                                                # 获取root权限
cp /boot/grub/grub.cfg /boot/grub/grub.cfg_backup  # 先备份一下
cat /boot/grub/grub.cfg > tmp            #将内容重定向到其他文件,便于修改
gedit tmp                                #或者vi/vim tmp

#将下面这些内容全部删掉
### BEGIN /etc/grub.d/25_custom ###
menuentry "Windows UEFI bootmgfw.efi" {
search --fs-uuid --no-floppy --set=root 84F5-6727
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}
menuentry "Windows Boot UEFI loader" {
search --fs-uuid --no-floppy --set=root 84F5-6727
chainloader (${root})/EFI/Boot/bkpbootx64.efi
}
... 
menuentry "Windows Boot UEFI recovery bkpbootx64.efi" {
search --fs-uuid --no-floppy --set=root 5686-D913
chainloader (${root})/efi/Boot/bkpbootx64.efi
}
### END /etc/grub.d/25_custom ###
其实就是删掉对应的中间那几项
删掉之后再:
cat tmp > /boot/grub/grub.cfg
reboot

祝你好运:关于详情请参考:https://www.cnblogs.com/lymboy/p/7783756.html

方法三:若你同我一样,在修复阶段失败了,报了如下错误,请继续看:

An error occurred during the repair.

Please write on a paper the following URL:
http://paste.ubuntu.com/p/bhrJFR5TGJ/

In case you still experience boot problem, indicate this URL to:
[email protected]

You can now reboot your computer.
Please do not forget to make your BIOS boot on nvme0n1p1/EFI/ubuntu/shimx64.efi file!

If your computer reboots directly into Windows, try to change the boot order in your BIOS.
If your BIOS does not allow to change the boot order, change the default boot entry of the Windows bootloader.
For example you can boot into Windows, then type the following command in an admin command prompt:
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

关机返回到Windows 10
右击开始按钮,选择Windows PowerShell管理员命令行(或者搜索cmd 以管理员身份运行)
执行:

mountvol g: /s  # 这将你的EFI目录结构映射到G盘
g:              # 进入g盘
cd \EFI         # 进入EFI文件夹
dir             # 查看该文件夹
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi   # 复制上述的报错命令

重启你的电脑
若你将会看到一个包含Ubuntu和Windows选项的GRUB菜单(恭喜修复成功)
如果你的电脑仍然直接启动到Windows,重复如下截图步骤,但是这次输入: bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
Dell G3 搭建深度学习环境(Ubuntu16.04)
重启你的电脑(若你执行两次同我一样都是直接进入Windows10,请往下看)
方法四:到了这里,相信你的心情同我一样了,来到终极必杀技:重装系统(是不是很简单!)
我当时也是无法了,插入U盘启动盘,重启机器按F2,选择install ubuntu,在安装选项这一部分,选择覆盖安装,等待其安装完成。
这一次启动项终于修复好了。

二、Ubuntu16.04 nvidia显卡驱动

安装好Ubuntu16.04后,我们可以安装深度学习环境了。
由于ubuntu 16.04默认安装了第三方开源的驱动程序nouveau。为了避免sudo apt-get install nvidia-*安装方式造成登录界面循环或者导致无法安装nvidia显卡驱动。需要禁用nouveau

2.1. 禁用nouveau开源驱动
  1. 编辑文件blacklist.conf
    sudo vi /etc/modprobe.d/blacklist.conf
    
  2. 在文件最后部分插入以下两行内容:
    blacklist nouveau
    options nouveau modeset=0
    
  3. 执行以下命令,更新系统
    sudo update-initramfs -u
    
  4. 重启系统(一定要重启)
  5. 验证nouveau是否已禁用
    lsmod | grep nouveau
    

若没有信息输出,说明nouveau已被禁用,接下来安装nvidia的显卡驱动。

2.2 安装nvidia显卡驱动
  1. 英伟达的官网上查找你自己电脑的显卡型号然后下载相应的驱动:https://www.geforce.cn/drivers
    下载至home目录下。(目录自定义,但是不要有中文)
    Dell G3 搭建深度学习环境(Ubuntu16.04)

  2. 在ubuntu下按ctrl+alt+f1进入命令行界面。(ctrl+alt+f7返回桌面)
    登陆后,然后在命令行界面下输入:

    sudo service lightdm stop      //这个是关闭图形界面,不执行会出错。
    
  3. 然后卸载掉原有驱动:

    sudo apt-get remove nvidia-*  (若无,请跳过该命令)
    
  4. 给驱动run文件赋予执行权限:

    sudo chmod  a+x NVIDIA-Linux-x86_64-418.43.run
    
  5. 安装:(我之前参考另一位博主的,他没写禁用opengl,搞的我安装后出现循环登陆问题。不得已卸载重装)

    sudo ./NVIDIA-Linux-x86_64-418.43.run -no-x-check -no-nouveau-check -no-opengl-files
    #只有禁用opengl这样安装才不会出现循环登陆的问题
    sudo service lightdm start             # 重启服务
    
    ==================================================================
    安装参数说明:
    -no-x-check:安装驱动时关闭X服务
    -no-nouveau-check:安装驱动时禁用nouveau
    -no-opengl-files:只安装驱动文件,不安装OpenGL文件
    
  6. 挂载Nvidia驱动:

    modprobe nvidia
    
  7. 检查驱动是否安装成功:

    nvidia-smi
    

如果出现如下提示,则说明安装成功:

三、Ubuntu16.04 CUDA安装

待续