sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
这里就有一点意思了,这一步的本质就是把 /etc/apt/sources.list 这个文件中的内容进行替换。替换的方式有很多种,笔者在查询过程在大致看到了三种:vim,nano 以及 gedit
sudo vim /etc/apt/sources.list
Vim是从vi发展出来的一个文本编辑器。其代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。——来自wiki
sudo namo /etc/apt/sources.list
nano是Unix和类Unix系统中的一个文本编辑器,是Pico的复制品(clone)。nano的目标是类似Pico的全功能但又易于使用的编辑器——来自wiki
sudo gedit /etc/apt/sources.list
gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器。它简单易用,有良好的语法高亮,对中文支持很好,支持包括GB2312、GBK在内的多种字符编码。——来自wiki
对于像笔者一样什么都不懂的rookie,建议使用gedit,对于删除,写入操作与notepad并无两样。打开文件之后,替换里面的全部内容为以下地址。
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
sudo apt-get update
笔者重度依赖chrome,第一件事情就是同步google帐号
sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/
# 将下载源加入到系统的源列表
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
# 导入谷歌软件的公钥,用于下面步骤中对下载软件进行验证
sudo apt-get update
# 对当前系统的可用更新列表进行更新
sudo apt-get install google-chrome-stable
# 执行对谷歌 Chrome 浏览器(稳定版)的安装
笔者所用的显卡为GeForce GTX 1650 显卡
由于笔者要使用pytorch,pytorch同时支持cuda9.2/ 10.1/ 10.2/ 11.0 所以在安装显卡驱动的时候我们要挑选合适的驱动型号。
下载驱动最好的方式还是到官网上去下载官方GeForce驱动程序
选择你对应的显卡和系统并进行搜索,选择合适与你cuda的驱动版本。因为笔者要使用cuda10.1所以选择的是 430 的驱动(截屏没有截到)
或者你可以先安装好驱动,再通过nvidia-smi 来选择支持的cuda版本。
如果在装系统的时候选择了安装第三方驱动,先执行以下卸载nvidia全部驱动,比较安全。
sudo apt-get remove --purge nvidia*
然后我们要修改以下文件,禁用nouveau
sudo gedit /etc/modprobe.d/blacklist.conf
然后在打开的文件的末尾添加以下两句
blacklist nouveau
options nouveau modeset=0
保存关闭之后,我们关闭nouveau
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
然后更新内核并重启
update-initramfs -u
reboot
重启之后我们可以验证以下nouveau是否关闭了,如果没有任何响应,则关闭成功
lsmod | grep nouveau
在ubuntu下按ctrl+alt+f1进入命令行界面,不要惊慌(哈哈哈哈,现在觉得命令行好优秀),按 ctrl+alt+f7可以回到图形化界面。
在命令行界面输入用户名,密码进行登录。
关闭图形化界面
sudo service lightdm stop
然后来到驱动文件路径,一般来讲是Downloads,赋予自己下载的驱动权限
如果不知道名字可以使用 ls 指令查看
sudo chmod a+x NVIDIA-Linux-xxxx-xxx.xx.run
然后执行程序。
sudo ./NVIDIA-Linux-xxxx-xxx.xx.run -no-x-check -no-nouveau-check -no-opengl-files
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
在安装过程中笔者的驱动是一路 continue yes 这里引入别人的回忆
The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续。
问题没记住,选项是:install without signing
问题大概是:Nvidia’s 32-bit compatibility libraries? 选择 No 继续。
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续
安装完成后我们挂在驱动并检查是否安装成功
modprobe nvidia
nvidia-smi
如果出现以下提示,我们就安装成功了
可以看到在该提示的右上角有适配的CUDA版本,这里提示的是10.1版本,那我们接下来就安装CUDA吧!使用该指令打开图形化界面。
sudo service lightdm start
或者,笔者在这里推荐直接重新启动就好了
reboot
安装cuda还是老样子,来到cuda的官网。从之前的nvidia-smi可知,目前笔者安装的驱动适配的是CUDA 10.1,来到CUDA10.1 的官网
值得一提的是官网下面有四个网址都是很不错的资源,其中
Documentation
提供了一些版本信息
我们也可以在这里参考,我们使用哪个版本的驱动。
Release Notes
这个文档指导我们如何安装CUDA 10.1
我们可以看到选择好合适的版本之后,有四种安装方式。笔者已经尝试过了前三种,认为第一种的安装最为简单。所以这里选用第一种,下载run文件。
其中还有一件事情需要我们注意,就是Linux内核的版本,如果遇到依赖的版本问题,可以考虑升降级。这里给大家参考。
由于我们已经装好了驱动,并且关闭了nouveau,所以安装CUDA就会很简单了。直接从Terminal来到目标文件路径,运行run文件。
sudo sh cuda_<version>_linux.run
然后直接accept,到了选择安装内容的时候注意!不用再次安装显卡驱动了。使用空格键取消驱动的安装,安装剩下的全部内容就好了。
打开用户配置文件
sudo gedit ~/.bashrc
在文件的末尾添加路径
export PATH="/usr/local/cuda-10.1/bin:$PATH"
export LD_LIBRARY_PATH="/usr/lcoal/cuda-10.1/lib64:$LD_LIBRARY_PATH"
更新配置文件
source ~/.bashrc
nvcc --version
cudnn作为一个工具包,它的安装是极为简便的,版本的选择完全依赖于CUDA的版本
老生常谈的问题还是去官网比较靠谱:cudnn官网
令人遗憾的是,下载需要先登录,那就只能注册一手了。
选择适配CUDA 10.1的cudnn,下载最后三个unbuntu16.04的安装包。
很令人舒适cudnn官网也配备了安装说明文档里面详细记录了如何安装。
首先来到我们下载文件的路径,一般是Downloads。然后执行以下语句
sudo dpkg -i libcudnn8_x.x.x-1+cudax.x_amd64.deb
sudo dpkg -i libcudnn8-dev_8.x.x.x-1+cudax.x_amd64.deb
sudo dpkg -i libcudnn8-samples_8.x.x.x-1+cudax.x_amd64.deb
安装说明文档提供了测试方法
复制cudnn例子到执行路径,并且编译,然后运行,如果得到Test Passed 的提示,则安装成功。
cp -r /usr/src/cudnn_samples_v8/ $HOME
cd $HOME/cudnn_samples_v8/mnistCUDNN
make clean && make
./mnistCUDNN
对于我这种rookie来讲,最稳妥的安装程序的方法还是去官方网站下载了啦。选择合适的版本进行下载。
官网还是非常贴心地给了安装说明文档
直接cd 到 安装程序路径,安装
bash Miniconda3-latest-Linux-x86_64.sh
根据安装向导完成安装,还有环境变量,打开终端时是否默认进入base。这些都可以自由设置。关闭当前终端,重启终端,并输入以下,检查是否安装成功。
conda --version
那么当你想退出的时候是什么指令呢
conda deactivate #退出base
conda activate base #启动base
设置是否自动进入base
conda config --set auto_activate_base false
不多赘述了
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --set show_channel_urls yes
创建新环境
conda create -n pytorch python=3.6
进入环境并安装PyTorch,其他版本的安装命令请参考PyTorch官网
conda activate pytorch
conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch
conda install opencv-python
conda install jupyter notebook
conda install ipykernel
python -m ipykernel install --user --name pytorch --display-name "pytorch"
笔者这里选择了 pytorch这个虚拟环境 新建了一个叫做 pytorch 的内核
老规矩先上官网Download Pycharm
然后我们惊讶地发现,不用下载了,直接搞定
sudo snap install pycharm-community --classic
sudo add-apt-repository ppa:freyja-dev/unity-tweak-tool-daily
sudo apt-get update
sudo apt-get install unity-tweak-tool
这是一款很优秀的桌面工具
Flatabulous主题是一款ubuntu下扁平化主题,安装主题和图标
sudo add-apt-repository ppa:noobslab/themes
sudo apt-get update
sudo apt-get install flatabulous-theme
sudo add-apt-repository ppa:noobslab/icons
sudo apt-get update
sudo apt-get install ultra-flat-icons
到此为止,基本上笔者需要跑深度学习的Ubuntu系统就差不多准备完毕了.如果后面有更多值得梳理总结的有关Ubuntu16.04,笔者会持续更新.欢迎大家交流探讨.