前言: 一开始我们实验室尝试用deb安装包的方法安装NVIDIA Tesla P100对应的显卡驱动和CUDA,但是总是出现重复登录的问题,迫不得已我们最后采用比较繁琐的用run文件安装显卡驱动和CUDA的方法。(还是建议先用deb文件安装一下试试,因为比较简便。)
首先明确一下,我没有安装NVIDIA驱动程序。我改为运行了cuda.run文件,并在提示我时安装了NVIDIA驱动程序。
1)下载相关CUDA.run文件。
2)安装前准备

$ sudo apt-get update
$ sudo apt-get install build-essential

3)无需创建xorg.conf文件。如果你有一个,删除它(假设你安装了新的操作系统)。

$ sudo rm /etc/X11/xorg.conf

4)屏蔽系统自带的显卡驱动nouveau

新建blacklist-nouveau.conf文件,输入命令:

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

往文件中写入:

blacklist nouveau
options nouveau modeset=0

保存并退出。这一步是为了禁掉Ubuntu自带开源驱动nouveau。
然后执行命令:

sudo update-initramfs -u

接下来需要重启,输入reboot命令,重启后执行:

lsmod | grep nouveau

查看nouveau模块是否被加载。如果什么都没输出,则已成功禁用。
5)使用下面命令禁用X server

sudo service lightdm stop

会出现黑屏,然后同时按:Ctrl + Alt + F1,然后输入用户名和密码。

6)转到您拥有CUDA驱动程序的目录,然后运行

$ chmod a+x cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb

7)现在,运行命令进行安装,请注意,我明确不希望安装OpenGL标志:

$ sudo bash cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb --no-opengl-libs

8)我的会出现以下问题,如果您的没有问题,可跳过这一步。

Installing the NVIDIA display driver... The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly.
If you know that the kernel source packages are installed and set up correctly, you may pass the location of the kernel source with the '--kernel-source-path' flag.

参考文章:Oldpan博客-安装cuda9.1内核问题:Unable to locate the kernel source
参考文章:zgwLinux-Ubuntu16.04修改内核启动
我的解决方案是降低ubuntu16.04系统的内核。网上有很多方法,都是坑,我采用了如下方法,亲测有效!
下面开始将我系统的内核由4.15.0-29降为4.4.0-98
(1)使用下面命令回到图形界面

sudo service lightdm restart

(2)基本知识
linux更换内核很简单,一个系统中可以安装多个内核,也可以在开机的时候通过grub来选择要启动的内核。首先我们要做的是先看自己系统中现在存在几个内核。

使用uname -r查看当前使用的内核。

然后我们明确几个有关内核的文件:

/etc/default/grub 定义了有关启动过程的一系列设置,比如设置内核启动顺序、系统等待启动时间、或者启动过程中相关设置等;
/boot/grub/grub.cfg 注意一下这个文件是由上一个文件而自动生成的,不建议修改这个文件的内容
/etc/grub.d 是操作系统菜单目录,也是由系统生成,我们也不用修改。
(3)开始更换,使用下面命令安装4.4.0的内核

sudo apt-get install linux-headers-4.4.0-98-generic linux-image-4.4.0-98-generic

执行完这个命令之后,可以到/boot中看现在存在的kernels

(4)修改/boot/grub/grub.cfg中的内容。
使用以下命令打开这个文件:

sudo gedit /boot/grub/grub.cfg

找到如下代码块:

 linux   /boot/vmlinuz-4.15.0-29-generic root=UUID=8086863d-2eca-415d-85d1-1bebdcf0ef3a ro  quiet splash $vt_handoffinitrd /boot/initrd.img-4.15.0-29-generic
}

将其改为自己想使用的内核,我的如下:

linux    /boot/vmlinuz-4.4.0-98-generic root=UUID=8086863d-2eca-415d-85d1-1bebdcf0ef3a ro  quiet splash $vt_handoffinitrd  /boot/initrd.img-4.4.0-98-generic

然后找到如下代码块:

submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-8086863d-2eca-415d-85d1-1bebdcf0ef3a' {

将此行代码下的与4.15.0-29相关的代码全部删除:

menuentry 'Ubuntu, with Linux 4.15.0-29-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-29-generic-advanced-8086863d-2eca-415d-85d1-1bebdcf0ef3a' {recordfailload_videogfxmode $linux_gfx_modeinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod ext2set root='hd0,gpt3'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  8086863d-2eca-415d-85d1-1bebdcf0ef3aelsesearch --no-floppy --fs-uuid --set=root 8086863d-2eca-415d-85d1-1bebdcf0ef3afiecho    'Loading Linux 4.15.0-29-generic ...'linux    /boot/vmlinuz-4.15.0-29-generic root=UUID=8086863d-2eca-415d-85d1-1bebdcf0ef3a ro  quiet splash $vt_handoffecho   'Loading initial ramdisk ...'initrd   /boot/initrd.img-4.15.0-29-generic}menuentry 'Ubuntu, with Linux 4.15.0-29-generic (upstart)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-29-generic-init-upstart-8086863d-2eca-415d-85d1-1bebdcf0ef3a' {recordfailload_videogfxmode $linux_gfx_modeinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod ext2set root='hd0,gpt3'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  8086863d-2eca-415d-85d1-1bebdcf0ef3aelsesearch --no-floppy --fs-uuid --set=root 8086863d-2eca-415d-85d1-1bebdcf0ef3afiecho  'Loading Linux 4.15.0-29-generic ...'linux    /boot/vmlinuz-4.15.0-29-generic root=UUID=8086863d-2eca-415d-85d1-1bebdcf0ef3a ro  quiet splash $vt_handoff init=/sbin/upstartecho   'Loading initial ramdisk ...'initrd   /boot/initrd.img-4.15.0-29-generic}menuentry 'Ubuntu, with Linux 4.15.0-29-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-29-generic-recovery-8086863d-2eca-415d-85d1-1bebdcf0ef3a' {recordfailload_videoinsmod gzioif [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fiinsmod part_gptinsmod ext2set root='hd0,gpt3'if [ x$feature_platform_search_hint = xy ]; thensearch --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  8086863d-2eca-415d-85d1-1bebdcf0ef3aelsesearch --no-floppy --fs-uuid --set=root 8086863d-2eca-415d-85d1-1bebdcf0ef3afiecho   'Loading Linux 4.15.0-29-generic ...'linux    /boot/vmlinuz-4.15.0-29-generic root=UUID=8086863d-2eca-415d-85d1-1bebdcf0ef3a ro recovery nomodeset echo 'Loading initial ramdisk ...'initrd   /boot/initrd.img-4.15.0-29-generic}

然后点击保存!
(5)在/boot目录中,执行以下命令删除掉这个目录内所有4.15内核的文件

sudo rm -rf *4.15.0-29*

(6)执行下面命令来对你之前的设置进行更新。

sudo update-grub

(7)最后重启,输入下面命令检查是否以更换到了4.4.0内核

uname -r

如果显示内核已经更改为4.4.0,则从第5步开始重新安装!
9)安装过程中
接受EULA条件
安装NVIDIA驱动程序说“是”
安装CUDA工具包+驱动程序说“是”
安装CUDA样品说“是”
不用Nvidia重建任何Xserver配置。
10)安装应该完成,但是我有以下小问题,如果您没有问题,可以跳过这一步。

Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so
.......

原因是缺少相关的依赖库,安装相应库就解决了:

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

再次执行第7步进行安装,就不再提示了。
11)重启电脑,检查Device Node Verification
执行:

 ls /dev/nvidia*

结果显示

/dev/nvidia0  /dev/nvidiactl  /dev/nvidia-modeset  /dev/nvidia-uvm
或者
/dev/nvidia0      /dev/nvidiactl      /dev/nvidia-uvm

则安装成功。
如果不显示这几个文件,搜索以下博客进行解决:
QLULIBIN-Ubuntu 16.04 上安装 CUDA 9.0 详细教程
12)添加环境路径变量:
终端中输入

sudo gedit /etc/profile

在打开的文件末尾,添加以下两行:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

保存文件,并重启。因为source /etc/profile是临时生效,重启电脑才是永久生效。
这里有点与官方安装文档稍有不同,需要说明:
官方文档里说只需在终端中运行上述两条export语句即可,但如果不将它们不写入/etc/profile文件的话,这样的环境变量在你退出终端后就消失了,不起作用了,所以写入才是永久的做法。

重启电脑,检查上述的环境变量是否设置成功
a、 验证驱动版本,在终端中输入以下命令:

cat /proc/driver/nvidia/version

结果显示

gs@gs:~$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  384.130  Wed Mar 21 03:37:26 PDT 2018
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10)

b、 验证CUDA Toolkit,在终端中输入以下命令:

nvcc -V

会输出CUDA的版本信息
如果是这样的:
The program ‘nvcc’ is currently not installed. You can install it by typing:
sudo apt-get install nvidia-cuda-toolkit
可能是环境配置没有成功,请重复上述步骤7)。
13)尝试编译cuda提供的例子
在简书上搜文章:永兴呵呵哒-ubuntu16.04以deb包方式安装cuda9.0(package manager installation)
14)重新启动。一切都应该没问题。

六、远程连接安装

这里安装的是 windows 访问Ubuntu的,你们可以在windows 系统运行mstsc,选择ip端口访问远程Ubuntu桌面。
这个方便所有人一块使用服务器

  1. 安装xrdp
    使用快捷键"Ctrl+Alt+T"打开一个终端窗口,输入"sudo apt-get install xrdp"–>回车–>输入root用户的密码–>回车–>输入"y"–>回车,安装完成。
  2. 安装vnc4server
    输入"sudo apt-get install vnc4server"–>回车–>输入root用户的密码–>回车–>输入"y"–>回车,安装完成。
  3. 安装xfce4
    输入"sudo apt-get install xubuntu-desktop"–>回车–>输入root用户的密码–>回车–>输入"y"–>回车–>输入"echo “xfce4-session” >~/.xsession"–>回车–>输入"sudo service xrdp restart"–>回车,安装完成。
  4. 解决黑屏问题
    vim /etc/xrdp/startwm.sh
    #在./etc/X11/Xsession前插入
    xfce4-session
    #重启xrdp
    cd /etc/init.d/
    ./xrdp restart

服务器(Dell T360+2块Tesla P100)配置显卡驱动和cuda最终版(终于配置好了)相关推荐

  1. 服务器(Dell T360)Ubuntu16.04+Tesla P100+CUDA8.0+CUDNN7.0.5配置

    这篇文章的方法最后也有问题! 最终配置成功版请见下面这个链接的内容: https://blog.csdn.net/u014106566/article/details/83314626 前言: 一开始 ...

  2. 新电脑配置显卡驱动及CUDA、CUDNN环境

    新电脑配置显卡驱动及CUDA.CUDNN环境 下载显卡驱动及相应版本CUDA及CUDNN 1.查看硬件配置:右键此电脑点击管理 →点击设备管理器→点击显示适配器→查看独立显卡 2.网页搜索英伟达驱动下 ...

  3. Ubuntu配置显卡驱动,CUDA及cuDNN

    Ubuntu配置GPU驱动,CUDA及cuDNN CUDA和cuDNN的安装网上有许多教程,但每一个教程都没能让我简洁有效地安装成功,尤其一些帖子忽视了某些重要细节,让整个安装过程更复杂. 我尝试用先 ...

  4. NVIDIA Tesla C2050 安装显卡驱动及cuda

    参考官方指南 http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/index.html 1. 查看PCI接口 lspci ...

  5. Windows10 配置 Nvidia 驱动与 Cuda 环境搭建

    title: Windows10 配置 Nvidia 驱动与 Cuda 环境搭建 mathjax: false date: 2021-04-17 12:50:27 tags: [Environment ...

  6. ubuntu16.04 配置显卡驱动+cuda8.0+cudnn+pytorch

    ubuntu1604 配置显卡驱动cuda80cudnnpytorch 在线安装显卡驱动 离线安装cuda 安装cudnn 配置环境变量 离线安装cond 配置pytorch 测试pytorch 感悟 ...

  7. ubuntu 双显卡安装n卡 Quadro K620 Tesla K80*8 显卡驱动的卸载 (已解决)没有图形界面。黑屏

    事情是这样的,如题两块显卡,安装显卡驱动后,黑屏,于是开始了各种折腾,试遍了网上所有的方法,使用了各种各样的安装手段,全都不好使.后面是收集的其他人的解决方式,以及我的机器的反应,需要的可以对照下.最 ...

  8. Dell G3-3579 安装 Ubuntu16.04 并安装显卡驱动

    之所以没有安装18.04是因为安装ubuntu18.04后安装NVIDIA显卡驱动时总是各种坑.ubuntu18.04认证机器里面没有Dell G3相近系列.而16.04认证机器里面有G3相近系列G5 ...

  9. mysql官网下载下来的免安装版怎么配置_Windows下的免安装版MySQL配置

    近日在新的电脑上安装MySQL遇到一些小问题,在此做分享,也作为日后备用. 下载MySQL 进入MySQL官网,依次点击:上方选项卡DOWNLOADS->页面底端MySQL Community ...

最新文章

  1. python学习笔记(3) -- 常用数据类型
  2. python怎么安装模块-Python模块及其导入
  3. JSON.parse()和SON.stringify()
  4. 【Linux】kali 2019.4 安装中文输入法
  5. php 二维数组按照某value值求出最大值最小值
  6. Android AlertDialog 实现对话框 警告对话框、列表对话框、自定义对话框
  7. java用多线程实现爬虫_JAVA 多线程爬虫实例详解
  8. 华为xpro重装linux,HUAWEI MateBook X Pro 2019款重装win10系统以及Bios设置方法
  9. SPSS入门笔记记录
  10. 用HTML+CSS做一个漂亮简单大学生校园班级网页
  11. 纪中GMOJ语言模块题目1009
  12. 计算机打印机端口配置,如何设置打印机端口,打印机端口设置的方法步骤
  13. js return加分号_JavaScript语句后应该加分号么?
  14. 黑帽黑客历史盘点:这群人到底厉害到什么程度?
  15. 3万字英国留学生Java后台面经,中offer率5/7 精
  16. 中国山苍子油行业销售动态与营销趋势预测报告2022-2027年
  17. DataFrame的数据处理笔记
  18. (转)UltraEdit 注册机使用激活方法
  19. ECCV 2022 | RFLA:基于高斯感受野的微小目标检测标签分配
  20. 【渝粤题库】陕西师范大学292181公共人力资源管理作业(专升本)

热门文章

  1. Linux C/C++网络编程实战-陈硕-笔记11-Roundtrip代码分析
  2. 5.22:黑客情人节 !
  3. 生活感悟108句话(经典推荐)
  4. 踏浪点神:9.19恒指早盘分析及最新资讯
  5. 仙域游戏46级做一个纪念
  6. 攻防世界-favorite_number
  7. linux mjpg-streamer安装
  8. 判断谁说真话,谁说假话
  9. 帐号实名制及其方式-修订版1.0
  10. Unity中实现判断Missing还是Null