Ubuntu用pip时出现ERROR: Could not install packages due to an EnvironmentError: [Errno 28] 设备上没有空间的解决方法

问题描述:

在终端使用df -h查看各分区的使用情况,发现我在安装Ubuntu分的根目录只有20G,已经用了89%了,似乎系统会默认保留10%的大小,而pip install的安装方式是会把文件先下到tmp文件夹里,所以显示设备没有空间的问题。

解决方法:
  1. 使用gparted来给Ubuntu根目录空间大小扩容

    因为怕扩容出现问题,准备答辩结束了再操作,免得把双系统搞死了。。

  2. 暂时修改tmp的位置:

    cd ~
    mkdir tmp
    export TMPDIR = ~/tmp
    

    (这里我 /home 的空间大小还挺多,所以可以用 /home 来装临时文件)

    修改了tmp的位置,再用pip install就可以正常安装啦~

### 环境配置与解决方案 当使用 `pip` 安装 Python 包,如果遇到 `[Errno 28] No space left on device` 的错误提示,这通常是因为当前系统的磁盘空间不足所导致的。以下是针对该问题的具体分析和解决方法: #### 1. **检查磁盘空间** 在 Linux 或类 Unix 系统中,可以运行命令来查看磁盘空间的占用情况: ```bash df -h ``` 此命令会列出各个挂载点及其可用空间大小。通过观察 `/tmp` 和其他可能涉及的操作路径是否有足够的剩余空间,确认是否存在实际的空间不足问题[^2]。 #### 2. **调整缓存目录** 默认情况下,`pip` 使用的是系统级别的临目录作为其工作区(通常是 `/tmp`),而这些区域可能会因为频繁操作或其他程序占满而导致安装失败。可以通过设置自定义缓存目录解决问题: ```bash mkdir /data1/pip_cache pip install lmdeploy==0.5.3 --cache-dir /data1/pip_cache ``` 上述例子展示了如何创建新的存储位置并将其分配给 `--cache-dir` 参数以绕过原有限制。 #### 3. **修改环境变量 TMPDIR** 除了改变缓存外,还可以重新定义用于构建过程中的临文件夹的位置。例如,在 shell 中执行以下语句前缀后再继续安装流程: ```bash export TMPDIR='/data1/pip_cache' pip install lmdeploy==0.5.3 --cache-dir /data1/pip_cache ``` 这里设置了 `TMPDIR` 到具有更多自由度的新分区上,从而避免原有路径上的容量瓶颈[^3]^,^[^5]。 #### 4. **清理不必要的数据释放资源** 有即使采取了以上措施仍未能完全缓解状况,则需进一步排查整个服务器内部是否存在大量冗余资料占据宝贵额度;比如旧版本软件包副本、日志记录等都可以考虑删除掉以便腾出额外地方供后续动作所需[^1]. --- ### 总结说明 综上所述,面对由于磁盘空间短缺引发的一系列 pip 软件部署障碍,我们推荐先利用 df 命令检测具体哪部分最紧缺接着依据实际情况选用适当策略——要么转移至别处存放中间产物要么干脆清除一些无关紧要的东西最终达成顺利装载目标库的目的。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值