离线无网络环境下配置Python/Anaconda环境踩过的坑

一、前言

        如果你同样需要在无网络环境下安装Python环境,这篇博客是一个很好的参考,由于内网没有网络,因此不能使用conda install/pip install等在线下载安装方式,经过个人尝试,推荐以下两种方法。

二、离线安装python库

        如果需要安装的环境比较简单,可以将所需要的xxx.whl安装包提前在有网的环境下载好后,再在内网服务器上安装,需要注意的是包的版本很重要,如果不确定目标系统环境能否兼容,可以多下载几个版本的包。但是实际情况中,一个库依赖着另一个库,属于是层层套娃,怎样才能一次找到并下好所有的依赖库呢?

1、利用pip找到所有依赖库

        利用pip show命令可以查看依赖包的信息及其依赖库,以安装pytorch_lightning为例,先查看其所需要的依赖库:

再依次搜索依赖库的依赖库,由上往下搜索:

2、包下载

        到pypi上找对应版本的包,并下载:

        由于pypi通常较慢,也可以用国内镜像,虽然搜索还是经常把浏览器整崩溃,我也要崩溃了:

https://pypi.tuna.tsinghua.edu.cn/simple/ # 清华大学
https://mirrors.aliyun.com/pypi/simple/ # 阿里云
https://pypi.douban.com/simple/ # 豆瓣
https://pypi.mirrors.ustc.edu.cn/simple/ # 中国科学技术大学
https://pypi.hustunique.com/ # 华中科技大学

        下载包的时候要注意版本,cp36表示适用于python 3.6.x,大多数解释器都是cpython,一般说的 python也是指cpython,amd64指适用于64位操作系统,win32适用于32位操作系统。py2.py3-none-any 适用于python2.x以及python3.x。any表示适用于32/64位操作系统,无限制。

        下载的文件一般有whl和tar.gz两种格式,whl文件采用pip命令直接安装,tar.gz是解压后执行python setup.py install,当直接pip xxx.whl报错setuptools时可以试试这种方法。

3、在开发服务器上创建虚拟环境(不使用anaconda管理跳过)

        离线环境下使用conda命令,需要加上--offline,方可正常使用,如果没网一般只能使用默认的base环境或者与其相同的python版本:

conda create --name Pytorch64 python=3.8 --offline

4、whl安装

        安装时cd到whl所在目录,按照依赖顺序由下往上使用pip install安装即可。

三、直接导入虚拟环境(Anaconda)

        如果环境比较复杂,最好的办法是将整个anaconda环境直接导入,非常方便。在有网络的环境下安装Anaconda后,新建虚拟环境,并用conda/pip安装所需要的库,然后将整个环境迁移到无网络的服务器上即可,前提是无网络的服务器上也需要安装Anaconda。

1、直接复制文件夹

        如下图所示,Anaconda的环境都是安装在envs目录下,使用命令conda env list显示的也是该目录下的环境,因此可以直接将对应的文件夹拷贝到目标机器上Anaconda安装目录的envs文件夹下即可正常使用,如果有Spyder、Jupyter等需要修改一下里面配置文件的路径。

2、将环境打包迁移

(1)克隆环境(可省略)

conda create -n 新环境的名称 --clone 老环境名称

(2)将环境打包

conda install -c conda-forge conda-pack # 安装conda-forge和conda-pack工具

conda pack -n 新环境名称 -o 新环境名称.tar.gz # 将环境打包

 

(3)将压缩包放到目标主机的同版本Anaconda路径下的envs文件夹内,解压
        注意:需要相同版本的Anaconda

(4)在目标主机上激活环境

conda activate 新环境

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/252481.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023年陕西省安全员C证证考试题库及陕西省安全员C证试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2023年陕西省安全员C证证考试题库及陕西省安全员C证试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上岗证考试大…

MIT6.S081-实验准备

实验全程在Vmware虚拟机 (镜像:Ubuntu-20.04-beta-desktop-amd64) 中进行 一、版本控制 1.1 将mit的实验代码克隆到本地 git clone git://g.csail.mit.edu/xv6-labs-2020 1.2 修改本地git配置文件 创建github仓库,记录仓库地址 我的仓库地址就是htt…

基于AT89C51单片机的LED点阵显示屏设计

点击链接获取Keil源码与Project Backups仿真图: [[https://download.csdn.net/download/qq_64505944/88637464?spm1001.2014.3001.5503]] **[源码获取] B 源码仿真图课程设计50 工程实训(三)课题设计 班级: …

【面试】Java最新面试题资深开发-Java中的垃圾回收机制

问题七:Java中的垃圾回收机制 请简要解释Java中的垃圾回收机制是如何工作的,以及它的优缺点。如果可能,请提供一些垃圾回收器的例子,以及它们在不同场景中的适用性。 Java垃圾回收机制 工作原理: Java垃圾回收机制…

linux(centos7)离线安装mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

1. 卸载mariadb相关rpm # 查找 rpm -qa|grep mariadb rpm -qa|grep mysql# 卸载 rpm -e --nodeps mariadb... rpm -e --nodeps mysql...2. 删除mysql相关文件 # 查找 find / -name mysql# 删除 rm -rf /var/lib/mysql...3. 查看是否有相关依赖,没有需安装 rpm -q…

考虑用序列化代理代替序列化实例

import java.io.*;// 用户类 class User implements Serializable {private String username;private String password;private String email;public User(String username, String password, String email) {this.username username;this.password password;this.email ema…

CentOS 7 部署 Nacos-2.3.0 (单机版)

CentOS 7 部署 Nacos-2.3.0 (单机版) 1. 下载 Nacos 安装包 历史版本:https://github.com/alibaba/nacos/releases/ 我选的是 2.3.0 版本,https://github.com/alibaba/nacos/releases/download/2.3.0/nacos-server-2.3.0.tar.g…

从传统型数据库到非关系型数据库

一 什么是数据库 数据库顾名思义保存数据的仓库,其本质是一个具有数据存储功能的复杂系统软件,数据库最终把数据保存在计算机硬盘,但数据库并不是直接读写数据在硬盘,而是中间隔了一层操作系统,通过文件系统把数据保存…

2023年12月5日,北京elastic Meetup 腾讯分享的搜索优化经验

1、减少长文本模糊匹配,降低 CPU 大量分词上的开销 长文本全文查询由于在查询时需要进行分词处理,因此在查询并发较大的情况下, cpu会先于IO被打满,从而出现大量的查询拒绝。 2、设置多副本提高并发和均衡单节点压力 Search查询请…

机器学习 | 线性算法 —— 大禹治水

Machine-Learning: 《机器学习必修课:经典算法与Python实战》配套代码 - Gitee.com 如果说KNN算法体现了人们对空间距离的理解, 那么线性算法则体现了人们对事物趋势上的认识。 注意图中横纵坐标的不同。 线性回归、多项式回归多用于预测,逻辑…

基于linux系统的Tomcat+Mysql+Jdk环境搭建(四)linux安装Mysql

1.切换到你需要安装mysql的路径 cd /root/usr/ 2.在线安装 安装网上的安装方式都有很多,可以自己百度一下 我们这里是自己搭建测试环境,可以直接选择在线安装,命令如下:yum install mysql-server, 但是我失败了 ┭┮…

蜂鸣器的工作原理

电路原理图使用SH69P43为控制芯片,使用4MHz晶振作为主振荡器。 PORTC.3/T0作为I/O口通过三极管Q2来驱动蜂鸣器LS1,而PORTC.2/PWM0则作为PWM输出口通过三极管Q1来驱动蜂鸣器LS2。另外在PORTA.3和PORTA.2分别接了两个按键,一个是PWM按键&#x…

使用 Wired XDisplay 连接失败的原因

使用 Wired XDisplay 连接扩展屏,有时候会连接不上 ,记下解决方法,以备后用: 1、扩展屏和主屏 一直在连接中,可能是其中一端没有提供数据访问权限 ps. 水果用户需要 打开 iTunes 并登陆 ,安卓用户 可能是 …

Mistral MOE架构全面解析

从代码角度理解Mistral架构 Mistral架构全面解析前言Mistral 架构分析分词网络主干MixtralDecoderLayerAttentionMOEMLP 下游任务因果推理文本分类 Mistral架构全面解析 前言 Mixtral-8x7B 大型语言模型 (LLM) 是一种预训练的生成式稀疏专家混合模型。在大多数基准测试中&…

1.Mybtis-Plus框架基本使用

Mybatis-plus是一个mybatis的增强工具,在mybatis的基础上只做增加不做改变,简化开发 提供通用的`mapper和service` 可以在不编写任何SQL语句的情况下快速实现对单表CRUD、批量、逻辑删除、分页操作 Mybatis-plus提供优秀插件,并对idea中快速开发插件mybatisX也进行功能使用。…

甜酷女孩穿搭 I 时尚与保暖都兼具的羽绒服

这款工装风羽绒服 酷酷的中性风 清新温柔的杏紫两色 采用定制复合面料 顺滑平整硬朗的材质 具有防水功能 下雪下雨天也不用担心哦 90白鹅绒,立领连帽设计 帽子做的是可拆卸 可以切换两种风格 袖口采用可调节魔术贴设计 下摆可调节抽绳设计 处处透着细节…

网络安全——SSH密码攻击实验

一、实验目的要求: 二、实验设备与环境: 三、实验原理: 四、实验步骤:​ 五、实验现象、结果记录及整理: 六、分析讨论与思考题解答: 网络安全-SSH密码攻击实验效果截图: https://downloa…

设计模式(3)--对象结构(3)--组合

1. 意图 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。 2. 三种角色 抽象组件(Component)、组合式节点(Composite)、叶节点(Leaf) 3. 优点 3.1 定义了包含基本对象和组合对象的类层次结构。 客户代码中&…

openwrt中taiscale自动安装脚本详解

openwrt中taiscale自动安装脚本详解 一、代码仓库地址 https://github.com/adyanth/openwrt-tailscale-enabler 二、代码仓库中脚本文件详解 主要包含三个脚本分别是etc/init.d/tailscale、usr/bin/tailscale、usr/bin/tailscaled ,接下来逐个分析一下脚本中的具…

【Redis】AOF 基础

因为 Redis AOF 的实现有些绕, 就分成 2 篇进行分析, 本篇主要是介绍一下 AOF 的一些特性和依赖的其他函数的逻辑,为下一篇 (Redis AOF 源码) 源码分析做一些铺垫。 AOF 全称: Append Only File, 是 Redis 提供了一种数据保存模式, Redis 默认不开启。 AOF 采用日志的形式来记…