一、anaconda安装
1.安装包下载
(1)linux
根据自己系统下载Linux安装包,上传到home/用户名下,然后使用命令安装
sh Anaconda3-2021.11-Linux-x86_64.sh
中间一直yes,到安装路径选择时可以默认,也可以指定自己想要安装的路径。
(2)windows
下载windows安装包,安装方式和普通软件类似,选择自己的路径进行安装即可。
2.检查是否成功
安装后使用命令行检查是否安装成功
conda -V
可能存在自动配置path失效的问题,如果出现conda找不到命令,则需要手动配置
(1)linux
vi ~/.bashrc
在最后一行插入,注意替换成自己的路径(vi编辑,“i”变成insert模式,修改后esc,然后:wq,没有权限的话:wq!)
export PATH=”$PATH:/home/username/anaconda3/bin”
重启环境变量
source ~/.bashrc
然后conda -V则成功
(2)windows
在“此电脑”-“高级系统设置”-“环境变量”-上面一栏的用户环境变量-“Path”-“编辑”-“新建”,将安装的anaconda的script路径添加进去
然后conda -V则成功
二、使用requirement.txt
linux在控制台,windows打开anacondaPrompt
(1)查看环境
conda env list
(2)新建环境
之后使用查看环境命令看是否创建成功,创建时等终端收集好数据后要按个y+回车
python版本可以在requirement.txt中查看,没有的话需要自己指定
conda create --name myEnvName(替换自己想要的名称) python=x.x
(3)激活环境
conda activate myEnvName
(4)安装requirement.txt的包
windows下将该文件放在C:\Users\自己用户名\下。linux放在root\下
requirement.txt格式如下:
ncurses==6.1
openssl==1.1.1g
pcre==8.43
xz==5.2.4
zlib==1.2.11
glib==2.63.1
如果是python包,则使用pip命令
pip install -r requirements.txt
如果是conda包(二进制包),则使用conda命令
conda install --yes --file requirements.txt
(5)查看成功安装的包
conda list
(6)删除环境
如果中途出现了问题,可以删除该环境然后重新执行以上步骤。
记得关闭终端重新打开一次或者退出环境后再删除。
conda deactivate
conda remove -n myEnvName --all
三、自己环境生成requirement.txt
生成目录在:win:C:\Users\自己用户名\或者linux:root\下
pip命令会生成python的所有包,但没有conda的
pip freeze > requirements.txt
conda的
conda list -e > requirements.txt
四、离线的Linux环境复现
如果有可以联网且有gpu的linux可以跳过前两步,从3开始
1.在windows上跑通代码
在windows上安装anaconda,并且运行好项目代码,注意路径可以使用如下代码,以便需要修改绝对路径或相对路径失效,有时直接使用“../”等会在conda的envs下开始相对路径而不是本项目。
from pathlib import Path
base_path = Path(__file__).resolve().parent.parent
2.在windows上安装linux虚拟机
win11要使用vmware17及以上,不然蓝屏
(1)自己找教程配置
可以使用自己的虚拟机,配置好外网连接,ping www.baidu.com成功即可
选择桥接或nat,要修改ens33的ip配置等
(2)作者已有的虚拟机
虚拟机,下载CentOS-7-x86_64-DVD-1708.iso
修改vmx和vmdk中的版本配置
修改nat的ip为192.168.101.0,网关192.168.101.2
虚拟机ip为192.168.101.65
finalshell连接使用root/centos
禁用NetworkManager
systemctl stop NetworkManager
systemctl disable NetworkManager
关闭虚拟机防火墙
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
查看是否成功
ip address
ens33有ip即联网,或通过ping www.baidu.com
3.生成自己的requirement.txt
在联网的win或者linux上安装好anaconda(参考“一”)后,调试好项目,然后生成requirement.txt(参考“三”),注意其中的有关win的包可能会报错,可以尝试着删掉,如果使用装有显卡的联网linux则不会出错。
此时要注意现有机器和目标机器(即离线linux)上的cuda版本一致问题,否则在联网机器可以跑通,离线不可以。
经过上述步骤后,会有一个在linux系统下可以跑通的conda环境。在envs/下找到环境包,整体下载下来,然后上传到离线服务器中,给上传的包赋予运行权限
在cd /usr/用户名/program/anaconda3/envs/mykg(自己的环境位置) 下
chmod -R 777 bin
到此,环境复现成功。
五、使用pycharm打开服务器上的项目并且运行
想要使用pycharm成功运行离线服务器上的项目,参考另外一篇文章: