【解决Jetson Nano 内存不足问题】纯命令行将 Conda 环境迁移到 SD 卡

前言

Jetson Nano 板载只有 16GB 的存储空间,在安装完 Ubuntu 和 Conda 环境后,剩余空间就捉襟见肘了,无法满足安装 PyTorch 等大型包的需求。此时如果你有一张SD卡,那么可以考虑将 Conda 环境迁移到 SD 卡上。

但网上的教程基本都是选择将操作系统迁移到SD卡以扩展存储,但这往往会带来性能下降的问题。其实可以只改Conda的安装目录实现一样的效果(因为主要的内存都是Conda环境占用):将Conda环境默认安装在SD卡上,而无需迁移整个操作系统。这种方法不仅有效利用了额外的存储空间,而且保持了系统的性能。

于是就有了这个教程😁

1. 准备工作

在开始之前,请确保你的Jetson Nano已经安装了Conda环境管理器。如果没有的话可以通过以下命令安装:

sudo apt update
sudo apt install conda

或者直接去anaconda官网下载(我是下的mambaforge,可以认为是一个小型的anaconda)

2. 创建新的Conda环境目录

首先,我们需要在SD卡上创建一个新的目录,用于存放Conda环境和包。假设你的SD卡已经挂载在/home目录下,可以使用以下命令创建环境目录:

mkdir /home/conda_envs

3. (💥最关键的一步💥)配置Conda环境变量

为了告诉Conda使用新创建的目录作为环境和包的存储位置,需要设置CONDA_ENVS_DIRS环境变量。咱们可以在你的shell配置文件中(如.bashrc.zshrc)添加以下行:

export CONDA_ENVS_DIRS="/home/conda_envs"

保存更改后,运行以下命令使配置生效:

source ~/.bashrc

4. 创建新的Conda环境

然后我们就可以使用Conda命令创建一个新的环境,它将默认存储在CONDA_ENVS_DIRS指定的目录中:

conda create --name my_new_env python=3.8

这里的my_new_env是新环境的名称,python=3.8指定的是Python的版本。

5. 激活新的Conda环境

使用以下命令激活你的新环境:

conda activate my_new_env

6. 安装包

在激活的环境中,你现在可以安装所需的包,它们将被存储在SD卡上:

conda install numpy pandas

7. 验证环境位置

为了确认环境和包确实被安装在了SD卡上,我们可以使用以下命令查看环境目录:

conda env list

这将列出所有环境及其对应的路径。确保你的新环境my_new_env的路径指向了/home/conda_envs

至此,我们就成功的把Conda环境改成默认装在SD卡上了

OVER👻

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搭建电商购物独立站抓取主流电商产品数据的方法:工具+电商数据采集API接口

分享一个抓取数据产品的方法,也是别人给我说的。 想做一个联盟产品相关的网站,然后需要采集电商网站的产品。咨询大佬告诉我,大量级电商商品数据的采集可以接入专业的电商数据采集API接口,也可以用webscrsper,于是乎就…

Stable Diffusion WebUI 图片信息(PNG Info)

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本文主要讲解 Stable Diffusion WebUI 的图片信息功能,主要包括:获取生成参数、将图片发送到其…

web安全学习笔记(6)

记一下第十节课的内容。 一.PHP语言中的if else判断 语法和c语言中非常类似,不再赘述,也可以使用if...elseif...elseif...else 1.True和False 2.,和 一个等号是赋值 两个等号是比较 三个等号是全等(内容相等,数…

2024系统架构师---常见考试概念

软件架构设计---架构4+1视图 逻辑视图:逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。一般用类图和对象图描述;开发视图:开发视图也称为模块视图,在UML中被成为实现视图,它主要侧重于软件模块 的组织和管理。该视图可描述源代码,系统文件结构。过程视图:…

redis作为缓存,mysql的数据如何与redis进行同步呢?双写一致性

数据可以保持延迟,但是数据最终也是一致性的 1.采用了异步处理方法,当有数据更新和插入数据库的时候,放入MQ,顶一个任务监听MQ有数据就进行更新redis缓存 2.阿里提供cannal中间件,他是一个个服务,可以伪装一…

使用Docker部署SpringBoot项目(避坑+超级详细版本,Linux运维基础72问

使用Docker部署SpringBoot项目(避坑超级详细版本) 所有文章不设限,我们相遇偶然,相散坦然,互不打扰,各自安好,向阳而生 首先呢,非常感谢我们一起相遇在这个地方,想必此…

设计模式面试题(七)

1.什么时候使用模板方法 模板方法模式是一种行为设计模式,它在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。 以下是一些使用模板方法模式的常见情况&#xf…

Redis的主从复制、哨兵模式、集群,概述及部署

目录 一、Redis主从复制 1.1.Redis主从复制的概念 1.2.Redis主从复制的作用 1.3. Redis主从复制的流程 1.4.Redis主从复制的搭建 1.4.1.修改Master节点 1.4.2. 修改Slave节点Redis配置文件 1.4.3.验证主从效果 二、Redis 哨兵模式 2.1 哨兵模式的原理 2.2 哨兵模式…

NoSQL概述

NoSQL概述 目录 一、为什么用NoSQL 二、什么是NoSQL 三、经典应用分析 四、N o S Q L 数 据 模 型 简 介 五、NoSQL四大分类 六、CAP BASE 一、为什么用NoSQL 1、单机MySQL的美好年代 在90年代,一个网站的访问量一般不大,用单个数据库完全可以轻松应…

有效的括号--如果字符串没有左括号,或者字符串是右括号为开头,则存在括号不匹配和顺序不正确的情况公字符串无效

题目-有效的括号 ​ 一、分析题目 二、编写代码 typedef char STDataType;typedef struct Stack {STDataType* a; //int top; //相当于数组下标,注意栈为空时,top的值应该为?int capacity;//栈的容量 }ST;void STInit(ST* pst); void STD…

数据挖掘实战-基于LSTM算法的HCV检测者分类模型研究

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

《图解Vue3.0》- 调试

如何对vue3项目进行调试 调试是开发过程中必备的一项技能,掌握了这项技能,可以很好的定义bug所在。一般在开发vue3项目时,有三种方式。 代码中添加debugger;使用浏览器调试:sourcemap需启用vs code 调试:先开启node服…

深入探索Linux的lsof命令

在Linux系统中,了解哪些文件被哪些进程打开对于系统管理和问题诊断是极其重要的。这正是lsof命令,即List Open Files,发挥其强大功能的场景。本文旨在详细介绍lsof的起源、底层原理、参数意义,常见用法,并详解其返回结…

涛哥聊Python | aiohttp,一个有趣的 Python 库!

本文来源公众号“涛哥聊Python”,仅用于学术分享,侵权删,干货满满。 原文链接:aiohttp,一个有趣的 Python 库! 大家好,今天为大家分享一个有趣的 Python 库 - aiohttp Github地址&#xff1a…

持续集成中软件测试的作用

在软件持续集成中,测试扮演着至关重要的角色。以下是测试在持续集成中的主要作用: 1. 提高测试效率:自动化测试通过脚本自动执行测试用例,可以显著减少测试所需的时间和资源,从而提高测试的效率和可靠性。在持续集成环…

鸿蒙原生应用开发-网络管理Socket连接(三)

应用通过TLS Socket进行加密数据传输 开发步骤 客户端TLS Socket流程: 1.import需要的socket模块。 2.绑定服务器IP和端口号。 3.双向认证上传客户端CA证书及数字证书;单向认证只上传CA证书,无需上传客户端证书。 4.创建一个TLSSocket连接…

Linux文件IO(4):目录操作和文件属性获取

目录 1. 前言 2. 函数介绍 2.1 访问目录 – opendir 2.2 访问目录 – readdir 2.3 访问目录 – closedir 2.4 修改文件访问权限 – chmod/fchmod 2.5 获取文件属性 – stat/lstat/fstat 2.5.1 文件属性 – struct stat 2.6 文件类型 – st_mode 3. 代码练习 3.1 要求 3.2 代…

docker-compose安装adguard给局域网提供dns加速服务

启动配置 docker-compose.yaml配置文件 version: 3.3 services:adguard:image: adguard/adguardhome:latestcontainer_name: adguardrestart: unless-stoppedvolumes:- ./workdir:/opt/adguardhome/work- ./confdir:/opt/adguardhome/confports:- 53:53/tcp- 53:53/udp- 81:8…

练手题之四

公众号:编程驿站 第 1 题 【 问答题 】 • 走出迷宫 当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单。 假设你已经得到了一个n*m的迷宫的图纸,请你找出从…

js的check函数

在JavaScript中,并没有一个内置的名为check的函数。然而,你可以根据需求自定义一个check函数,用于执行各种验证和检查任务。这个check函数的具体作用完全取决于你如何定义和实现它。 以下是一个简单的示例,展示了如何定义一个che…