【Linux开发板pip安装库时报错解决】Error 28:No space left on device报错需要更换库的安装路径

本文主要是介绍【Linux开发板pip安装库时报错解决】Error 28:No space left on device报错需要更换库的安装路径,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

之前在Linux开发板上尝试运行pytorch框架,但是需要安装torch和torchvision的库,很奇怪的是我按照之前pip3 install torch -i http://pypi.douban.com/simple --trusted-host pypi.douban.com的安装方式却出现了以下的报错:

系统报错提示说No space left on device,纳尼???虽然torch框架不小吧但是开发板不至于装不下吧,我通过df -h查看了一下 磁盘使用情况,明明还有很多空间啊为什么会提示空间不够呢?

之前在Windows的环境下pip包从未出现过这类现象,所以我怀疑可能是Linux文件大小的问题,查了一下果然,pip下载并安装包的流程是这样的:

(1)首先连接到索引,从索引开始下载包,包的初始下载通常会首先存储到 /tmp 目录,tmp目录主要存放下载过程中生成的部分文件、解压缩的中间文件、以及某些包的编译过程中使用的临时文件。特别是如果需要解压缩或编译时,这些文件会暂时驻留在 /tmp 中。

(2)下载完成后,pip 会将最终的 .whl 文件或 .tar.gz 文件存储到 ~/.cache/pip/ 目录下,以备将来使用。

(3)解压缩并安装后的包会被放到 Python 环境的 site-packages 目录中,这是实际导入包时使用的路径。

所以第一步tmp目录可能存在存储空间不足的方法,我们有两个思路
(1)删除tmp目录下的文件,但是可能存在误删的情况导致一些其它问题

(2)所以我采取的是第二个方法,通过设置环境变量TMPDIR来更改pip的默认下载目录,这里我们可以自定义下载目录,并修改原来的pip指令如下:

TMPDIR=/home/tmp pip3 install pandas --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

其中TMPDIR=/path/to/dir 只是指定了 pip 命令在安装过程中使用的临时文件目录位置,而不影响最终包的安装路径,最终相应的库还是会安装到Python环境的。

使用 --no-cache-dir 参数可以跳过这个缓存步骤,直接从远程下载并安装包。

输入以上指令之后,可以噜!

 

这篇关于【Linux开发板pip安装库时报错解决】Error 28:No space left on device报错需要更换库的安装路径的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1103907

相关文章

Java中字符编码问题的解决方法详解

《Java中字符编码问题的解决方法详解》在日常Java开发中,字符编码问题是一个非常常见却又特别容易踩坑的地方,这篇文章就带你一步一步看清楚字符编码的来龙去脉,并结合可运行的代码,看看如何在Java项... 目录前言背景:为什么会出现编码问题常见场景分析控制台输出乱码文件读写乱码数据库存取乱码解决方案统一使

C++右移运算符的一个小坑及解决

《C++右移运算符的一个小坑及解决》文章指出右移运算符处理负数时左侧补1导致死循环,与除法行为不同,强调需注意补码机制以正确统计二进制1的个数... 目录我遇到了这么一个www.chinasem.cn函数由此可以看到也很好理解总结我遇到了这么一个函数template<typename T>unsigned

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja