Aanconda3如何将旧电脑的环境配置迁移到新电脑

conda环境迁移

  • 简单粗暴但是有可能报错的方法
    • 一些相关链接
  • requirement.txt
    • 输出目前的环境安装包
    • 安装环境包
      • 通过网络下载安装
      • 离线安装包
        • 离线下载安装包
        • 离线安装
    • 一些出现的错误
      • 批量下载找不到合适的包
      • 安装时说目前的包不符合规则
      • 使用pip install 命令时,提示 Using cached解决方案
      • python setup.py egg_info Check the logs for full command output.问题解决
    • 一些比较好的链接
  • yml的方法配置
    • 首先需要创建yml文件:
    • 安装yml文件
    • 在创建新环境时,需要指定环境名称
      • 方法一:在yml文件中,添加新建环境的名称
      • 方法二:创建新环境时,指定环境名称

深度学习开发环境:anaconda+pycharm,安装conda后方便管理各种python包,以及conda可以提供交互式编程工具(jupyter),在windows上将环境由旧电脑迁移到新电脑:

简单粗暴但是有可能报错的方法

1、先在新电脑上下载一个conda,并安装,安装路径必须同旧电脑。这样迁移过程中就不存在路径问题了,安装后别忘了配置环境变量。

2、直接复制旧电脑conda安装目录下的envs文件夹下的虚拟环境,粘贴到新的电脑上conda安装目录的envs文件夹下(路径必须一致),下面图片中的内容是我安装的所有虚拟环境。
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第1张图片

3、看清这个路径,可以点开json文件看一下,里边有对应的python包源文件的存储地址,比如我点开第一个json文件,source后跟有地址。把这个地址对应的文件夹复制到新电脑同样的目录下。以后每个json文件对应的文件夹都要复制到新电脑对应目录下。
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第2张图片
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第3张图片

例如:D:\Anaconda3_install\envs\py37\conda-meta文件夹下有几十个json文件,需要将这些文件中的素有路径中的内容由旧电脑复制到新电脑。
最便捷有效的方法:旧电脑上pkg文件夹的所有文件复制到新电脑conda安装目录下pkg文件夹内,一劳永逸,这样就不会出路径错误。
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第4张图片

至此,conda环境的迁移工作就结束了。

一些相关链接

python迁移到另一台电脑_教你如何将anaconda虚拟环境移植到另一台电脑

Anaconda虚拟环境迁移小记录
这个链接中说明了一些关于conda路径出错的情况

在这里插入代码片

requirement.txt

写好了程序以后,如果要更换电脑,如何把已有程序迁移出去呢

输出目前的环境安装包

pip freeze > requirement.txt  ##迁移requirement文档

安装环境包

通过网络下载安装

把requirement拷到新的电脑上,再输入

pip install -r requirement.txt

这种安装方法有很多包是安装不了的,比如torch1.2.0,torchvision0.4.0等,这些包不能够这样安装,因为下载源没有相应的版本,并且下载比较慢,需要将requirements.txt中的这些不能安装的包的相关命令删除,然后下载到本地进行安装。

离线安装包

首先使用命令行将所有的安装包进行下载

离线下载安装包

下载单个离线包

pip download -d your_offline_packages <package_name>

批量下载离线包

pip download -d your_offline_packages -r requirements.txt

其中your_offline_packages是下载到的位置,可以为绝对路径,也可以是相对路径。
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第5张图片

Aanconda3如何将旧电脑的环境配置迁移到新电脑_第6张图片

离线安装

安装单个离线包

 pip install --no-index --find-links=/your_offline_packages/ package_name

批量安装离线包

pip install --no-index --find-links=/your_offline_packages/ -r requirements.txt

其中/your_offline_packages/可以是当前路径的相对路径,也可以是绝对路径。

一些出现的错误

批量下载找不到合适的包

pip download -d your_offline_packages -r requirements.txt

批量下载的时候,找不到pytorch和torchvision的包,这种情况需要手动下载。
并且下载的pytorch和torchvision等需要是.whl后缀的,zip的压缩包形式很有可能不行。

安装时说目前的包不符合规则

因为第一次安装时pytorch和torchvision时自己下载的zip的压缩包形式,所以找到不包,即使找到包也会显示目前的包不符合规则,然后我下载了torch的.whl形式的包,在requirements.txt中添加下面的命令行,这样就可以成功。

torch==1.2.0+cpu
torchvision==1.2.0+cpu

使用pip install 命令时,提示 Using cached解决方案

运行下面的命令批量下载安装包时

pip download -d your_offline_packages -r requirements.txt

出现提示 Using cached解决方案

PS C:\Users\rHotD\Documents\GitHub> pip install -r .\requirements.txt
Collecting asn1crypto==0.22.0 (from -r .\requirements.txt (line 1))
  Using cached asn1crypto-0.22.0-py2.py3-none-any.whl
Collecting attrs==17.2.0 (from -r .\requirements.txt (line 2))
  Using cached attrs-17.2.0-py2.py3-none-any.whl
Collecting Automat==0.6.0 (from -r .\requirements.txt (line 3))
  Using cached Automat-0.6.0-py2.py3-none-any.whl
Collecting beautifulsoup4==4.5.3 (from -r .\requirements.txt (line 4))
  Using cached beautifulsoup4-4.5.3-py3-none-any.whl
Collecting cffi==1.10.0 (from -r .\requirements.txt (line 5))
  Using cached cffi-1.10.0-cp36-cp36m-win32.whl
Collecting constantly==15.1.0 (from -r .\requirements.txt (line 6))
  Using cached constantly-15.1.0-py2.py3-none-any.whl
Collecting cryptography==1.8.1 (from -r .\requirements.txt (line 7))
  Using cached cryptography-1.8.1-cp36-cp36m-win32.whl
Collecting cssselect==1.0.1 (from -r .\requirements.txt (line 8))
  Using cached cssselect-1.0.1-py2.py3-none-any.whl
Collecting cycler==0.10.0 (from -r .\requirements.txt (line 9))
  Using cached cycler-0.10.0-py2.py3-none-any.whl
Collecting Django==1.10.6 (from -r .\requirements.txt (line 10))
  Using cached Django-1.10.6-py2.py3-none-any.whl
Collecting django-crispy-forms==1.6.1 (from -r .\requirements.txt (line 11))
  Using cached django_crispy_forms-1.6.1-py2.py3-none-any.whl
Collecting django-formtools==2.0 (from -r .\requirements.txt (line 12))
  Using cached django_formtools-2.0-py2.py3-none-any.whl
Collecting django-pure-pagination==0.3.0 (from -r .\requirements.txt (line 13))

出现上面的情况说明我们已经在当前的环境下已经下载了这些包,已经在缓存中了,不需要下载。但是如果我想要下载到本地,则解决办法

  1. 删掉 pip/cache/ 目录下的所有文件夹
  2. 创建一个新的环境,然后运行这个命令行,在新环境中没有这些安装包,就可以顺利下载
    Clear the cache directory where appropriate for your system
PS C:\Users\rHotD\Documents\GitHub> pip install -r .\requirements.txt
Collecting asn1crypto==0.22.0 (from -r .\requirements.txt (line 1))
  Downloading asn1crypto-0.22.0-py2.py3-none-any.whl (97kB)
    100% |████████████████████████████████| 102kB 109kB/s
Collecting attrs==17.2.0 (from -r .\requirements.txt (line 2))
  Downloading attrs-17.2.0-py2.py3-none-any.whl
Collecting Automat==0.6.0 (from -r .\requirements.txt (line 3))
  Downloading Automat-0.6.0-py2.py3-none-any.whl
Collecting beautifulsoup4==4.5.3 (from -r .\requirements.txt (line 4))
  Downloading beautifulsoup4-4.5.3-py3-none-any.whl (85kB)
    100% |████████████████████████████████| 92kB 684kB/s
Collecting cffi==1.10.0 (from -r .\requirements.txt (line 5))
  Downloading cffi-1.10.0-cp36-cp36m-win32.whl (149kB)
    100% |████████████████████████████████| 153kB 365kB/s
Collecting constantly==15.1.0 (from -r .\requirements.txt (line 6))
  Downloading constantly-15.1.0-py2.py3-none-any.whl
Collecting cryptography==1.8.1 (from -r .\requirements.txt (line 7))
  Downloading cryptography-1.8.1-cp36-cp36m-win32.whl (1.1MB)
    100% |████████████████████████████████| 1.1MB 828kB/s
Collecting cssselect==1.0.1 (from -r .\requirements.txt (line 8))

python setup.py egg_info Check the logs for full command output.问题解决


well…
simply because…
pip/pip3 应该升级了

pip3 install --upgrade pip

pip install --upgrade pip

此处需要看你使用的时pip还是pip3进行选择。
使用共享服务器的别忘了加sudo
Aanconda3如何将旧电脑的环境配置迁移到新电脑_第7张图片

一些比较好的链接

python pip 自动生成requirements、批量离线下载、批量安装、修改linux默认源

yml的方法配置

首先需要创建yml文件:

1.创建ENV环境.yml文件,需要进入conda环境才能执行这个命令,不然conda不知道要导出那个env

conda env export > environment.yml 

2.导出anaconda python的环境到environment.yml文件

conda env export | grep -v "^prefix: " > environment.yml

上面命令导出时通过grep删除了“prefix:“ ,但是实际好像通过文件创建的anaconda python环境,prefix选项好像是不起作用的。

安装yml文件

首先打开conda,然后在conda-env.yml所在的文件夹打开PowerShell键入指令:

conda env create -f environment.yml

在创建新环境时,需要指定环境名称

主要有两种方法:

方法一:在yml文件中,添加新建环境的名称

name:new_env_name

方法二:创建新环境时,指定环境名称

conda env create -f environment.yml -n new_env_name

你可能感兴趣的:(软件的安装和使用,深度学习,python,windows,anaconda)