一、制作引导U盘 在ubuntu官网下载服务器版本的ubuntu【Ubuntu 20.04.6 LTS】https://releases.ubuntu.com/20.04/
然后使用Rufus或者其他工具,制作引导U盘。
二、bios配置 在bios中关闭 网络引导,然后打开快速引导和 USB设备引导,在boot选项中把USB优先级提高,或者直接选择USB设备boot;
如遇到 辅助风扇报错可暂时不处理;
三、安装ubuntu
配置的时候最好用AMT这个网口,Ubuntu 安装完毕以后 把网线再查回非AMT的网口,下面装Ubuntu的过程我们都是插在AMT口操作的。
选语言;
选键盘布局
选择手动还是DHCP动态分配IP;我这里选择的手动manual;
如果您的Ubuntu服务器在代理服务器后面,则需要在此处输入代理服务器详细信息。否则,只需将其保留为空;
需要配置Ubuntu存档镜像。系统会自动为你选择一个默认的镜像。如果您不希望使用默认镜像,请在此处输入“镜像地址”,这个可以配置阿里云(http://mirrors.aliyun.com/ubuntu/),我这里使用默认的,但是不代表默认的每次都行,这里强烈建议改成清华的源:https://mirrors.tuna.tsinghua.edu.cn/ubuntu ;
配置磁盘布局,即对硬盘进行分区。您将获得两个选择。选择任何适合您的给定分区方法。
使用整个磁盘:此方法将擦除整个硬盘并自动对驱动器进行分区。推荐给新手。如果选择此选项,则可以选择设置LVM并使用LUKS加密LVM配置。
continue之后 ,输入服务器系统的详细信息,例如您的名称,服务器名称,用户名及其密码,您将使用它们来登录服务器。(注意此时如果你设置了阿狗,那阿狗就具备root权限。)但是注意,此时 你想切root用户是做不到的,但是root用户又是实际存在的,要切root 用户,需要先passwd root
给root用户定一个密码。
可以选择安装openSSH服务器,该服务器允许您从网络上的任何系统远程访问该服务器。
Ubuntu 20.04 LTS安装将立即开始。需要一段时间,具体取决于软件包的选择和Internet的速度。
reboot,立刻拔出U盘。
四、查看GPU型号
也能拆机看看 显卡上有没有贴着,直接明了就是拆机麻烦点。
五、安装Nvidia驱动 五-0、兼容性知识的了解 兼容性推荐看这个解释https://tianzhipeng-git.github.io/2023/11/21/cuda-version.html#%E5%8D%A1%E5%92%8Cdriver%E7%89%88%E6%9C%AC%E5%85%BC%E5%AE%B9
有几个点要理解
GPU kernal-mode driver
CUDA user-mode driver
CUDA runtime
上面两个绑定在一起,在Nvidia驱动,cuda runtime 可以理解为 我们分析的cuda版本,nvidia驱动是向后兼容的,支持老版本,现在的Nvidia驱动对cuda 也有小版本兼容,如果Nvidia驱动最开始对应的12.0,则12.0 12.1 12.X都是兼容的。
torch安装起来直接考虑所安装的torch附带的cuda版本 , 如torch-1.12.0+cu116-cp39
, 和机器的driver是否兼容即可
另外需要强调的是,pytorch 自带了一个 cuda支持包 ,大部分时候不会调用 本地系统中的cuda,不需要安装本地的cuda服务 。
五-1、下载 先进Nvidia官网看看这个显卡推荐的驱动,https://www.nvidia.com/en-us/drivers/ 。 下面是Tesla V100GPU和GTX3090的例子;
1 2 wget https://us.download.nvidia.com/XFree86/Linux-x86_64/550.120/NVIDIA-Linux-x86_64-550.120.run
五-2、安装 确保 nvidia驱动被 彻底卸载了,所以先尝试卸载一遍;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 nvidia-smi lspci | grep -i nvidia sudo systemctl stop lightdm sudo systemctl stop gdm sudo vim /etc/modprobe.d/blacklist-nouveau.conf blacklist nouveau options nouveau modeset=0 sudo update-initramfs -u sudo reboot sudo bash NVIDIA-XXX-XXX.XXX.run --uninstall sudo dpkg -l | grep nvidia sudo apt-get purge '^nvidia-.*' Errors were encountered while processing: qemu-ga sudo apt-get remove --purge qemu-ga sudo apt-get autoremove sudo apt-get clean sudo apt-get update sudo apt-get install qemu-ga 或者 sudo apt-get install qemu-guest-agent sudo apt-get purge '^nvidia-.*' sudo apt-get autoremove --purge sudo apt-get clean sudo dpkg -l | grep nvidia sudo reboot sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup sudo vim /etc/apt/sources.list deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse sudo dpkg -i nvidia-driver-local-repo-ubuntu2004-550.54.14_1.0-1_amd64.deb sudo cp /var/nvidia-driver-local-repo-ubuntu2004-550.54.14/nvidia-driver-local-F9E6E988-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -f install sudo apt install nvidia-driver-550 sudo reboot nvidia-smi sudo bash NVIXXX.XXX.XXX install sudo apt update sudo apt install gcc sudo apt install make
五-3、重启nvidia服务 1 2 3 sudo systemctl restart nvidia-persistenced sudo reboot
六、安装cuda cuda 官网 https://developer.nvidia.com/cuda-12-4-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_local
1 2 3 4 5 6 7 8 9 10 11 12 13 sudo apt-get --purge remove "*cublas*" "cuda*" "nsight*" sudo rm /etc/apt/sources.list.d/cuda* sudo rm /etc/apt/sources.list.d/nvidia-ml.list sudo apt-get autoremove sudo apt-get autoclean sudo reboot
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 mkdir -p /data/tmpexport TMPDIR=/data/tmp换源,先备份 sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup sudo vim /etc/apt/sources.list deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda-repo-ubuntu2004-12-4-local_12.4.0-550.54.14-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2004-12-4-local_12.4.0-550.54.14-1_amd64.deb sudo cp /var/cuda-repo-ubuntu2004-12-4-local /cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda-toolkit-12-4 export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH source ~/.bashrcnvcc --version
七、安装conda 下载conda,我推荐使用miniconda,https://docs.conda.io/en/latest/miniconda.html#linux-installers。
兄弟改个国内源吧,不然贼慢。
1 2 3 4 5 6 7 8 9 10 11 12 13 cp ~/.condarc ~/.condarc.bakvim ~/.condarc channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 - conda-forge - defaults
使用 pip
命令安装 Jupyter Lab,同时确保安装在用户的本地目录中:
pip install --user jupyterlab
如果 ~/.local/bin
没有看到,可以将其添加到 ~/.bashrc
或 ~/.bash_profile
中:
1 2 echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrcsource ~/.bashrc
八、虚拟环境内安装cuda及pytorch conda update conda
注意:https://pytorch.org/get-started/locally/ 查看 cuda和pytorch对应关系,nvidia-smi 中右上角的 cuda是Nvidia驱动最高支持到的cuda版本,之后下载的cuda不能高于这个版本。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 pip uninstall torch torchvision torchaudio conda remove pytorch torchvision torchaudio conda install cudatoolkit=11.8 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda list cudatoolkit conda search cudnn conda install cudnn=8.9.2.26 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124 -i https://pypi.tuna.tsinghua.edu.cn/simpleß pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cu118 -i https://pypi.tuna.tsinghua.edu.cn/simple pip install pyyaml pip check pip install pytz idna urllib3 conda install cmake ... pip check conda activate XXX conda install ipykernel python -m ipykernel install --user --name python3_8 --display-name "Python 3.8 (conda)" python -m ipykernel install --user --name python3_10 --display-name "Python 3.10 (conda)" jupyter kernelspec uninstall python3.7 jupyter kernelspec list
九、成功配置案例
案例1
系统:Ubuntu 20.04.6 LTS (服务器版本)
python:Python 3.8.10
GPU:Tesla V100S-PCIE-32GB
Nvidia驱动:550.107.02
系统Cuda:cuda_12.4
conda:未安装
Pytorch:2.4.0+cu118
案例2
系统:Ubuntu 20.04.6 LTS (服务器版本)
python:Python 3.8.19 (conda虚拟环境的python)
GPU:GRID V100S-16C
Nvidia驱动:470.82.01 (企业版run安装)
系统Cuda:V10.1.243
conda:miniconda 24.7.1
Pytorch: 1.10.0 (conda虚拟环境内)
cuda:11.3(conda虚拟环境内)
cudatoolkit: 11.3.1 (conda虚拟环境内)
cudnn: 8200 (conda虚拟环境内)
以上只是两个成功安装案例,实际上 安装只要注意 后向支持和小版本支持的匹配原则,是很容易搭配的。
附加:可能遇到的问题 1、死进程霸占显存 遇到死了很久的进程,却一直霸占着显存
kill 这些进程,然后 torch.cuda.empty_cache()
2、出过一次错误
1 2 3 4 sudo systemctl restart nvidia-persistenced sudo reboot
3、安装遇到空间不够
1 2 3 mkdir -p /data/tmpexport TMPDIR=/data/tmp
4、Nvidia驱动下载好了但是没有安装上,没有识别到硬件 nvidia-smi 出现这样提示,且/dev下面没有 nvidia相关文件。
ll /dev | grep nvidia
显示空。
处理方法:
关机,(有虚拟化管理)在虚拟化的管理平台 删除硬件,再 添加硬件;(直接有硬件显卡)拔了,再插上;
如果还没有识别到,见 前面Nvidia驱动安装,巴拉巴拉再来一遍。