综述:
本篇博文主要讲解如何在VMware中安装的Linux(ubuntu版本)系统中部署需要的深度学习环境,以及后续如果空间不够用了,如何进行磁盘扩容。。本博文提供下载好的VMware虚拟机和ubuntu20.04的iso镜像文件。
***重要的事情先说:虚拟机不能使用主机英伟达显卡,即不能使用CUDA!!!!***原因后面说。
网盘链接:https://pan.baidu.com/s/1SUJDFUU6OHx1Jw1pbJxI4w?pwd=asqw
提取码:asqw
安装流程可以参考这边博文:(但是这里面提供的ubuntu是2024的,新版本可能会不稳定,而2004版本是比较稳定的,所以可以就下我提供的这个网盘文件,VM版本没太大所谓。)https://blog.youkuaiyun.com/weixin_74195551/article/details/127288338#%E4%B8%80.%E4%B8%8B%E8%BD%BDVMware%20Wworkstation%20Pro
Linux下的深度学习环境搭建(ubuntu,anacondan,pytorch,CUDA),虚拟机磁盘扩容
环境部署
anaconda:
终端输入:
chmod +x Anaconda3-2024.02-1-Linux-x86_64.sh
#" Anaconda3-2024.02-1-Linux-x86_64.sh"是你下载的anaconda文件名
#设置权限:
chmod +x Anaconda3-2024.02-1-Linux-x86_64.sh
#" Anaconda3-2024.02-1-Linux-x86_64.sh"是你下载的anaconda文件名
#执行文件:
./Anaconda3-2024.02-1-Linux-x86_64.sh
输入yes:
一直按enter,知道出现yes/no选项,选no(默认是不添加环境,我们要添加)
就成功安装anaconda了。
用anaconda创建一个pytorch的虚拟环境
先创建一个pytorch环境:
conda create -n pytorch
#pytorch是环境名
然后conda activate pytorch激活环境:
就出现让你先输入conda init的问题,这个很多人输了也还是不行,比如说我,输了之后出现no action taken这个错误。
输入conda initno action taken这个错误怎么解决?
输入如下命令:
/home/anaconda3/bin/conda shell.bash hook >>-/.bashrc
source ./ .bashrc
然后重新打开一个终端,输入conda activate pytorch就可以进入虚拟环境了。
pytorch下载
我们已经知道虚拟机不能用GPU,所以pytorch就只需要下CPU版本就可以了。在pytorch官网选好(Linux下用pip下载更快):
复制Run this Command的代码即可:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
磁盘扩容
启动虚拟机,使用终端,输入:df -h可以查看目前的磁盘大小:/dev/sda5就是我的主空间,很多人可能是sda1,不影响。
关闭虚拟机后,按照箭头所示操作:
执行完上面操作时候,磁盘空间还没有真正分配给我们的虚拟机主空间,还需要启动虚拟机,在终端输入:
sudo apt-get install gparted
sudo gparted
可以看到,我们关闭许虚拟机时划的80G并没有在这里进行分配,所以接下来就是右键点击你的主分区(就是Size最大的那个),我的就是这里的dev/sda2下的dev/sda5,所以先右键dev/sda2,在右键dev/sda5:
点开Resize之后,拖动上面的滑条:
操作完sda2后操作sda5(步骤同上):
就得到了新分配好的磁盘。最后点击绿色勾勾保存。
叉掉这个,点开终端,在输入 df -h,即可查看分配之后的Size:
为什么虚拟机里面不能用英伟达显卡
实践:
在我安装好GPU版本的pytorch之后:
依然显示不了我的显卡型号,但是我主机是有英伟达显卡的:
调用cuda也false了。
原因:
虚拟机的显卡是虚拟的,不能使用CUDA
虚拟机上装Nvidia显卡驱动会导致其他驱动全都不能用,所以不能在虚拟机上装N卡驱动,即无法使用GPU。
佐证:
网上其他说能解决驱动问题的方法我基本上都看过,也试了很多,搞了1天,不得行,就是不得行,因为本来就不可以用,就不是方法的问题。如果实在想在Linux下用CUDA,就不能用虚拟机,要用双系统。