由于环境错误而无法安装软件包:[Errno 28]设备上没有剩余空间

时间:2019-03-11 13:41:05

标签: python spacy

我正在尝试安装

python -m spacy download en_vectors_web_lg

但是它抛出了错误:

Could not install packages due to an EnvironmentError: [Errno 28] No space left on device

我可以知道为什么会产生错误吗?就是说我在目录中没有足够的空间来安装??

3 个答案:

答案 0 :(得分:3)

here所述,您可以创建一个有足够空间的目录,例如/folder/address/here/,然后运行以下命令进行安装:

TMPDIR=/folder/address/here/ pip install --cache-dir=/folder/address/here/ --build /folder/address/here/ package-name

由于我自己的情况是升级tensorflow,因此我运行了此

TMPDIR=/folder/address/here/ pip install --upgrade --cache-dir=/folder/address/here/ --build /folder/address/here/ tensorflow

答案 1 :(得分:1)

很可能是它试图将数据下载到您的/ tmp临时位置。我的猜测是默认设置(通常是您的内存的一半)太小而无法处理下载。

您可以使用以下命令禁用tmp安装:systemctl mask tmp.mount。在执行此操作之前,请小心并进行研究。

或者,您可以通过执行以下操作将TMPDIR目录设置为/var/tmp export TMPDIR='/var/tmp'

答案 2 :(得分:1)

我不得不做一个 system prune 以腾出更多空间。

docker system prune

请注意,这将“删除所有未使用的容器、网络、图像(悬空和未引用)以及可选的卷。”因此,请确保您不会吹走任何您需要的东西。