重装ubuntu22.04系统+配置StyleGAN环境

零、重装ubuntu22.04系统

我是在自己的win10笔记本上进行的U盘准备工作:

1.下载ubuntu22.04.1 LTS,链接:下载Ubuntu桌面系统 | Ubuntu

2. 下载将ISO写入U盘所需要的软件,根据ubuntu官网推荐选择:balenaEtcher - Flash OS images to SD cards & USB drives

3. 插入U盘,打开balenaEtcher,第一步选择刚刚下载1.的路径,第二步会自动识别出U盘填入,点击Flash,在需要格式化U盘时点击确定即可。 

4.U盘准备完毕插入需要重装系统的主机,重新启动时按F2或Delete键进入Bios界面,在启动选项那里把U盘的优先级调到第一位。

5.install ubuntu

我选择了简体中文语言体系,卸载ubuntu16.04并重新安装(没有自定义分区),一路选择完毕安装成功。

一、一些基本配置

1.卸掉ubuntu预安装的vi版本(因为存在一些键盘错乱的问题),安装vim:

sudo apt-get remove vim-common 
sudo apt-get install vim

2.重装系统时选择语言为简体中文,于是主目录下的文件夹全都是中文命名,很不方便终端打开,于是:

(1)先将各个文件夹名字手动改为对应的英文

(2)在终端修改.config/user-dirs.dirs文件中的目录,改完后:wq

vim .config/user-dirs.dirs

如:将"HOME/桌面"改为"HOME/Desktop",注意和(1)一致

(3)更新文件或者直接重启电脑

source .config/user-dirs.dirs

3.让终端忽视输入时的大小写:

1echo "set completion-ignore-case on" >> ~/.inputrc

4.ubuntu22.04只有python3没有python,python2,执行python命令会报错,根据报错提示安装python-is-python3软件包可以自动完成python和python3之间的链接创建:

sudo apt install python-is-python3

5.开启ssh-server——我的笔记本无法通过MobaXterm连接主机,先检查一下是否网络原因:在笔记本ping主机可以连通,而后检查主机发现是新系统没有ssh-server的锅:

sudo ps -e |grep ssh  #查看是否有ssh-server
sudo apt-get install openssh-server
systemctl restart ssh  #开启ssh-server

6.在bashrc里设置一些常用自定义命令

(1)ls -lrt:按修改时间查看文件详情,最新文件显示在最下面一行

(2)source ~/.bashrc:更新bashrc

(3)rm -i:删除文件前会确认一遍信息以防误删,但若输入命令rm -f或sudo rm则-i失效

vim ~/.bashrc
#写在原有的alias附近便于查看
alias lt='ls -lrt'
alias so='source ~/.bashrc'
alias rm='rm -i'
#:wq保存后
source ~/.bashrc
#下一次起更新bashrc只需输入so即可

7.安装向日葵,VScode等自需软件。

二、深度学习相关

1.重装系统后NVIDIA驱动没了,显示nvidia-smi not found,看到Ubuntu 22.04配置深度学习环境保姆级教程_Cris_Hu的博客-CSDN博客里提供了一个神奇的快速下载驱动方式:

软件和更新-附加驱动-选择一个驱动-应用更改-重启电脑-ok

2.下载CUDA和cudnn

(1)下载CUDA:CUDA Toolkit Archive | NVIDIA Developer

ubuntu22.04太新,在CUDA提供的选项中选择了20.04,复制给出的命令在终端粘贴.

下载安装过程中按照1.中博客所给的方法解决了gcc报错(cuda需要低于10.0版本gcc,而ubuntu22.04预装的是11.0版本),重新运行命令,只勾选安装了CUDA Toolkit和CUDA Documentation。

安装成功后,添加环境变量:

vim ~/.bashrc
#在文件末尾添加三行
export CUDA_HOME=/usr/local/cuda-11.3
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}
#:wq保存后
source ~/.bashrc

ps:我后续装好所有环境运行代码时发现报错:“error -- unsupported GNU version gcc later than 10 are not supported“,说明1.中给出的解决gcc版本方法(调整优先级)在我这里没起到作用,于是直接删除软链接重新建立。

#查看当前的gcc及g++版本
ls /usr/bin/gcc* -l
ls /usr/bin/g++* -l

 想看到的结果如截图所示,/usr/bin/g++的软链接指向g++-9,gcc同理。故需要:

# 删除原先的软链接
sudo rm /usr/bin/gcc
sudo rm /usr/bin/g++
# 新建软链接
sudo ln -s /usr/bin/gcc-9 /usr/bin/gcc
sudo ln -s /usr/bin/g++-9 /usr/bin/g++

(2)下载cudnn:cuDNN Archive | NVIDIA Developer

下载for Linux x86_64的压缩包,在下载路径下解压,把对应的文件复制到cuda路径下:

tar -xvf cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz
cd cudnn-linux-x86_64-8.6.0.163_cuda11-archive/ 
sudo cp include/cudnn.h /usr/local/cuda/include
sudo cp lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

3.安装anaconda3

下载Anaconda | Anaconda Distribution,装好了再加环境变量:

sh Anaconda3-2022.10-Linux-x86_64.sh
vim ~/.bashrc
export PATH=/home/user/anaconda3/bin:${PATH}
#:wq保存后
source ~/.bashrc

4.装pytorch

Start Locally | PyTorch选择符合CUDA=11.3的pytorch,在环境中装包。

5.运行代码看报错缺什么包就装什么包

6.提一下报了给我报了许多种错的ninja:Ninja是一个比Make更快速灵活的编译工具。

(1)RuntimeError:Ninja is required to load C++ extensions:未安装ninja

pip install ninja

(2)subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1

解决方法:将anaconda3/envs/环境名/lib/pythonX.X/site-packages/torch/utils/cpp_extension.py文件中的 ['ninja','-v'] 全部改成 ['ninja','--version']。

(3)ImportError: /home/user/.cache/torch_extensions/py36_cu113/fused/fused.so: cannot open shared object file: No such file or directory

此类缺少‘xx.so’文件的解决方式是手动使用ninja编译一下生成.so文件。

cd /home/user/.cache/torch_extensions/.../xx
ninja

猜你喜欢

转载自blog.csdn.net/qq_43522986/article/details/128172552