解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境
原文地址:解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境
0x00 配置
硬件
OS: Ubuntu 18.10
Base Board: ASUS WS X299 SAGE
CPU: Intel® Core™ i9-9820X
GPU: NVIDIA GeForce RTX 2080 * 4
RAM: 64 G
将要安装的软件
NVIDIA Driver: 410.93
Anaconda: Anaconda3 - conda 4.6.14
python: 3.6
opencv: 3.4.1
tensorflow: 1.13.1
CUDA: 10.0
cuDNN: 7.5.0
0x01 安装显卡驱动
由于 X299 主板不提供集显输出,Ubuntu 18.10 官方软件源也不包含 RTX 2080 的驱动,导致了装完 Ubuntu 之后无法初始化图形界面,屏幕上只有一个闪烁的光标位于左上角
待闪烁的光标出现后按下 Ctrl + Alt + F2进入 tty2,输入用户名和密码后使用命令行进行操作
注意:在 Linux 中输入密码是没有回显的
接下来使用 ROOT 用户进行操作
sudo -s
将阿里云 OPSX、网易云、清华 TUNA 的软件源添加至 apt 源列表中
apt (Advanced Packaging Tool) 是 Debian 系 Linux 的包管理工具,其中包括 apt-get、apt-cache 和 apt-cdrom
cat 命令用于将文件中的内容输出到终端,>> 用于将 cat 输出的文本追加到文件末尾
注意:>> 符号用于追加到文件末尾,> 符号用于替换文件内容,不要写错导致文件内容被替换
wget https://www.leviatan.cn/download/source-list/ubuntu-18.10
cat ubuntu-18.10 >> /etc/apt/sources.list
检查软件包更新
apt update
apt upgrade -y
安装常用工具
apt install -y gcc make vim net-tools htop openssh-server gnome-tweak-tool fcitx-googlepinyin
由于某些原因,该驱动需要先用 runfile 安装,再用 apt 安装才能保证驱动完整
补充:经测试发现 2019 年 5 月最新版的 410.104 runfile 驱动安装后仍然存在问题,所以这里使用 410.93 runfile + 410.104 apt 的搭配
补充:出现该问题的原因可能并不是 runfile 驱动不完整,而是 runfile 安装后无法注册驱动,有待测试
runfile 安装
下载 NVIDIA 适用于 Linux x64 的 410.93 驱动
NVIDIA Driver 410.93 for Linux
wget http://cn.download.nvidia.com/XFree86/Linux-x86_64/410.93/NVIDIA-Linux-x86_64-410.93.run
为驱动安装文件添加执行权限并执行
chmod +x NVIDIA-Linux-x86_64-410.93.run
./NVIDIA-Linux-x86_64-410.93.run --silent --no-cc-version-check --run-nvidia-xconfig
| 参数 | 功能 |
|---|---|
| no-cc-version-check | 不检查 gcc 版本 |
| run-nvidia-xconfig | 运行 nvidia-xconfig |
apt 安装
添加 NVIDIA Graphics 驱动软件源,并安装 nvidia-driver-410
add-apt-repository -y ppa:graphics-drivers/ppa
apt install -y nvidia-driver-410
此时由于刚刚安装完驱动,需要重新启动系统以使系统认出设备,同时使刚刚安装的 fcitx-googlepinyin 生效
reboot
重启后图形界面应正常启动
0x02 配置安装常用软件
更改用户目录语言
从应用程序列表中打开语言支持,此时提示系统安装的语言包不完整,选择安装,待安装完成后将键盘输入法系统切换为 fcitx
按下 Ctrl + Space 即可切换为 Google 拼音输入法
如果在安装系统的时候选择的语言是中文,用户目录下的文件夹都是以中文命名的,这样在命令行界面下操作非常不方便
以命令需要以普通用户的身份执行
首先将控制系统语言的环境变量 LANG 切换为英文,并更新 gtk 控制的用户目录
export LANG=en_US
xdg-user-dirs-gtk-update
在弹出的对话框中选择 Update Names
此时已经将文件夹名称更改为英文,但系统语言变成了英文
再将 LANG 改回中文
export LANG=zh_CN
重启生效
reboot
重启后弹出对话框询问是否更改用户文件夹名,勾选 不要再次询问我 并选择 保留旧的名称
安装 Google Chrome 和 VSCode
以下命令需要以 root 身份执行
sudo -s
下载安装包
wget https://www.leviatan.cn/download/google-chrome-stable_current_amd64.deb
wget https://www.leviatan.cn/download/vscode/code_1.33.1-1554971066_amd64.deb
apt install ./google-chrome-stable_current_amd64.deb
apt install ./code_1.33.1-1554971066_amd64.deb
0x03 安装 Anaconda3
下载 Anaconda3 安装脚本并赋予执行权限
wget https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh
chmod +x ./Anaconda3-2019.03-Linux-x86_64.sh
执行安装脚本,其中 -b 选项用于无人值守安装,-p 用于指定安装目录
./Anaconda3-2019.03-Linux-x86_64.sh -b -p /usr/local/anaconda3
无人值守安装不会添加 conda 的随终端启动脚本,这里手动写入 ~/.bashrc
# >>> conda initialize >>>
__conda_setup="$('/usr/local/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/usr/local/anaconda3/etc/profile.d/conda.sh" ]; then
. "/usr/local/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/usr/local/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
应用更改
source ~/.bashrc
使用 conda 安装环境
conda install -y python=3.6
conda install -y opencv=3.4.1
conda install -y tensorflow=1.13.1
0x04 安装 CUDA 和 cuDNN
下载 CUDA 10.0
在 CUDA 10.0 下载选择页面中选择 Linux - x86_64 - Ubuntu - 18.04 - runfile (local)
并在下方弹出的列表中下载安装包
下载 cuDNN
下载 cuDNN 需要注册 NVIDIA 帐号
在 cuDNN 下载列表页面中选择 Download cuDNN v7.5.0 (Feb 21, 2019), for CUDA 10.0
在弹出的列表中选择 cuDNN Library for Linux
安装
赋予执行权限并执行 runfile,其中 --override 选项用于忽略 apt 安装的 gcc-8.3 与用于 cuda 编译的 gcc-8.2 不匹配的问题
chmod +x ./cuda_10.0.130_410.48_linux.run
./cuda_10.0.130_410.48_linux.run --silent --toolkit --samples --samplespath=/usr/local/cuda-10.0 --override --verbose
| 参数 | 功能 |
|---|---|
| silent | 无人值守安装(静默安装) |
| toolkit | 安装 cuda-toolkit |
| samples | 安装示例 |
| samplespath | 示例安装位置 |
| override | 覆盖安装 |
| verbose | 输出安装日志 |
echo 'export PATH="/usr/local/cuda/bin:$PATH"' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"' >> ~/.bashrc
echo 'export CUDA_HOME="/usr/local/cuda:$CUDA_HOME"' >> ~/.bashrc
source ~/.bashrc
cd /usr/local/cuda/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery && make && ./deviceQuery && cd ~
tar zxvf cudnn-10.0-linux-x64-v7.5.0.56.tgz
cp -rf cuda/ /usr/local/cuda/
rm -rf cuda/
解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境的更多相关文章
- 从零开始在ubuntu上配置深度学习开发环境
从零开始在ubuntu上配置深度学习开发环境 昨天一不小心把原来配置好的台式机的开发环境破坏了,调了半天没有调回来,索性就重装一次ubuntu系统.这篇文章主要记录一个简单的.‘傻瓜式’教程. 一.U ...
- 从Ubuntu 18.04 LTS升级到Ubuntu 18.10版本的方法
从Ubuntu 18.04 LTS升级到Ubuntu 18.10版本的方法 2018-10-18 21:08:39作者:ywnz稿源:云网牛站 本文提供从Ubuntu 18.04 LTS(Bionic ...
- Ubuntu 18.10 版本发布
Ubuntu 是一个基于 Debian 的以桌面为主的 Linux 发行版,以其应用性而闻名.Ubuntu 提供三种官方版本:用于个人计算机的 Ubuntu 桌面,用于服务器和云的 Ubuntu 服务 ...
- 安装好ubuntu 18.10之后,屏幕一直在自动旋转,怎么办?
sudo apt-get install okular dia gimp Gparted sudo add-apt-repository universesudo apt install gnome- ...
- Ubuntu 18.10 安装PDF阅读器
======================================== 软件开发转移到了 Linux上,使用Ubuntu 18.10作为桌面开发环境 下面介绍 安装PDF阅读器 1.下载 福 ...
- Debian 9 / Debian 10 / Ubuntu 18.04 / Ubuntu 18.10快速开启BBR加速 或 关闭BBR加速
如果使用的是Debian 9.Debian 10.Ubuntu 18.04.Ubuntu 18.10等内核高于4.9版本的系统,均可以使用此方法开启BBR加速,若你使用了Ubuntu 19.04的系统 ...
- 解决ubuntu 18更换wifi vnc 连接不了的问题
解决ubuntu 18更换wifi vnc 连接不了的问题 问题: ubuntu18上更换了wifi热点,windows上的vnc连接不上. 解决方法: 1.ubuntu18系统上执行“共享”——“屏 ...
- 深度学习 GPU环境 Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 环境配置
本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 ...
- ubuntu 深度学习cuda环境搭建,docker-nvidia 2019-02
ubuntu 深度学习cuda环境搭建 ubuntu系统版本 18.04 查看GPU型号(NVS 315 性能很差,比没有强) 首先最好有ssh服务,以下操作都是远程ssh执行 lspci | gre ...
随机推荐
- Hyperledger Fabric(2)共识与交易
Fabric 的网络节点本质上是互相复制的状态机,节点之间需要保持相同的账本状态.为了实现这个目的,各个节点需要通过共识( consensus )过程,对账本状态的变化达成一致性的认同. Fabric ...
- 织梦DEDEcms5.7解决arclist标签调用副栏目文章
使用arclist标签调用文章的时候才发现,根本无法调用相关文章. 下面给出解决办法,希望帮到需要的人. 找到/include/taglib/arclist.lib.php文件然后打开.然后在大约30 ...
- linux系统很卡的基本排查方法
1. 查看内存使用情况 free -g 当观察到free栏已为0的时候,表示内存基本被吃完了,那就释放内存吧(释放内存参考上篇文章) 2. 查看磁盘使用情况 df -h 当发现磁盘使用率很高时,那就要 ...
- Summer training round2 #1
A:水 B:求两个三角形之间的位置关系:相交 相离 内含 ①用三个点是否在三角形内外判断 计算MA*MB.MB*MC.MC*MA的大小 若这三个值同号,那么在三角形的内部,异号在外部 #incl ...
- linux服务器上如何使用nginx访问本地静态资源
查看80端口是否被占用,一般80端口多被apache服务占用. netstat -anp|grep 80 2.修改apache服务的端口号 vim /etc/apache2/ports.conf 3. ...
- Kattis - heapsoffun Heaps of Fun (概率密度函数+dp)
题意:有一棵含有n个结点(n<=300)的根树,树上每个结点上的权值是从[0,ai](ai<=1e9)区间内随机的一个实数,问这棵树能形成一个最小堆的概率. 由于结点取值范围是1e9而且是 ...
- 【洛谷P4309】最长上升子序列
题目大意:给定一个序列,初始为空.现在我们将 1 到 N 的数字插入到序列中,每次将一个数字插入到一个特定的位置.每插入一个数字,我们都想知道此时最长上升子序列长度是多少? 题解:学会了 rope 操 ...
- Android 热修复 Tinker platform 中的坑,以及详细步骤(二)
操作流程: 一.注册平台账号: http://www.tinkerpatch.com 二.查看操作文档: http://www.tinkerpatch.com/Docs/SDK 参考文档: https ...
- .NET界面控件DevExpress全新发布v19.1.5|改进Office 2019主题
DevExpress Universal Subscription(又名DevExpress宇宙版或DXperience Universal Suite)是全球使用广泛的.NET用户界面控件套包,De ...
- 总结c语言
这个月的总结,我学到的知识虽然不是很多,学的很慢,也不懂什么意思,也没有多加去复习,也许这就是不去敲代码的代价,也只会简单的代码,学的时候真的是找不到思路,觉得这代码跟着老师讲课照着输入进去就可以了, ...