配置ubuntu(单系统)

@TOC

一、安装Ubuntu

首先进入BOOT模式选择U盘启动

安装Ubuntu,选择安装第三方插件的选项,如果之前安装过Ubuntu,选择清除磁盘并安装,之后等待安装成功即可

二、配置输入法

直接配置iBus即可

三、代理

链接 提取码:2sg3

新建一个文件夹v2ray,将刚才下载的两个文件加进去,将zip文件解压,运行

1
2
3
cd ~/v2ray
sudo chmod +x ./Qv2ray-refs.tags.v1.99.6-linux.AppImage
./Qv2ray-refs.tags.v1.99.6-linux.AppImage

点击Preference,找到General Settings,将下面的Core Executable PathV2ray Assets Directory路径分别设置为xxx/v2ray-linux-64/v2ray以及xxx/v2ray-linux-64,点击ok

点击Inbound Settings,将Set System Proxy选项打,点击ok退出

点击Subscriptions,将Subscription Address的内容改为自己的订阅内容,点击Update Subscription Data,点击ok,然后再Host List中双击自己的订阅即可

四、配置深度学习

1. 安装nvidia驱动

首先要做的两步:禁用原来的nouveau驱动,第二步sudo apt-get remove --purge nvidia* sudo apt-get autoremove删除自带的nvidia驱动。查看显卡版本号ubuntu-drivers devices,安装一共有两种方法

第一种去官网下载驱动,然后用以下命令行来进行安装,但是遇到了一个问题,安装完后重启系统无法开机,目前此方法还未解决

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
sudo init 3 # 之后输入用户名和密码
sudo apt-get remove --purge nvidia* ## 删除已安装的显卡驱动
sudo apt-get remove nvidia-*
sudo apt-get autoremove
# 这两项可能会安装失败
sudo apt-get update
sudo apt-get install gcc make
sudo chmod a+x NVIDIA-Linux-xxx.run
sudo ./NVIDIA-Linux-xxx.run -no-opengl-files
#######################################
安装过程中一些选项:
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
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

第二种方法:直接通过ubuntu的显卡软件部分来安装(推荐)

本文下载的nvidia-460

2. 安装CUDA 11.1+cudnn

进入官网https://developer.nvidia.com/cuda-11.1.0-download-archive按照要求点击,最后选择run文件(不要选择deb,会出bug)

下载完后进行安装,注意安装时取消nvidia驱动的安装(以为我们之前已经安装过了),取消的标志就是nvidia驱动前面的叉号取消掉,安装完后添加环境变量

1
2
3
4
5
6
7
sudo apt-get install vim # 如果安装了vim忽略此步骤
sudo vim ~/.bashrc
# 在文件的最后添加
export PATH=/usr/local/cuda-11.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH
source ~/.bashrc
nvcc -V</code></pre>

安装cudnn,进入官网找到相应的cuda版本并下载,然后解压文件tar -zxvf cudnnxxx.tar,执行

1
2
3
4
5
6
<pre class="wp-block-code"><code lang="bash" class="language-bash">sudo cp cuda/include/cudnn.h /usr/local/cuda-11.1/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.1/lib64
sudo chmod a+r /usr/local/cuda-11.1/include/cudnn.h
sudo chmod a+r /usr/local/cuda-11.1/lib64/libcudnn*

cat /usr/local/cuda-10.1/include/cudnn.h | grep CUDNN_MAJOR -A 2 # 查看版本(未反应)

3. 安装Anaconda

进入Anaconda官网,下载linux版本,进入到软件包位置,运行bash Anaxxx.sh即可安装

创建新环境:conda create --name torch python=3.8

添加国内源

1
2
3
4
5
6
7
8
9
10
11
12
13
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/pytorch/

conda config --set show_channel_urls yes
conda info

vim ~/.condarc # 进入编辑,删除不需要的-default源
conda info

4. 安装Pytorch

进入Pytorch官网,找到对应的命令,在conda的新环境torch中,输入(以本文cuda=11.1为例)安装较慢

关闭系统自动休眠sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

如果都不好使的话进入settings-privacy-screen lockBlank screen delay改为never即可

1
2
# CUDA 11.1
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge

安装完毕后检测pytorch是否安装成功

1
2
3
4
import torch
torch.cuda.is_available()
torch.cuda.get_device_name(0)
torch.rand(3,3).cuda()

五、硬盘挂载

一般来说,刚安装的系统是在ssd,hhd未被使用,因此最好将其挂载到ssd的某个文件夹下,首先新建一个文件夹wangyh,假设他的位置在/home/harry/wangyh(harry为用户名)

运行以下代码进行挂载

1
2
3
4
5
6
7
8
9
$ 大于2TB的硬盘无法通过sudo fdisk进行挂载,需要使用gpt进行挂载
$ 运行:sudo fdisk -l查看电脑上安装了哪些盘,假如/dev/sda,并且未分区
$ 运行:sudo parted /dev/sda进入parted模式
$ 运行:mklabel gpt将磁盘设为gpt格式
$ 运行:mkpart logical 0 -1将磁盘所有容量设置为gpt格式
$ 运行:print查看分区结果,此时应该是默认/dev/sda1一个分区
$ 运行:partprobe(不会显示任何结果)
$ 运行:sudo mkfs.ext4 -F /dev/sda1将其格式为为ext4格式
$ 运行:sudo gedit /etc/fstab,假设想要挂载到/home/harry/wangyh文件夹下,那么$ 在末尾添加:/dev/sda1 /home/harry/wangyh ext4 defaults 0 0,重启电脑,运行df -kh即可看到相应的挂载信息了

注意有挂在信息之后在运行sudo chmod 777 wangyh命令,不然没办法读写硬盘

Error: API rate limit exceeded for 52.86.33.27. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)