gpt4 book ai didi

python - 单独的 Anaconda 环境是否会安装相同的包两次,占用两倍的存储空间?

转载 作者:太空宇宙 更新时间:2023-11-03 23:55:55 27 4
gpt4 key购买 nike

如果我有两个独立的 Anaconda 环境,并且在每个环境中安装两个相同的包,它们会安装两次并占用两倍的存储空间吗?

conda create --name myenv1

conda create --name myenv2

conda activate myenv1

conda install matplotlib

deactivate

conda activate myenv2

conda install matplotlib

最佳答案

这是我对自己的疑问。不,它不会占用两倍的存储空间。我在新的 ubuntu 18.04 容器中使用 conda 版本 4.7.10,但您可以尝试使用您的 conda 版本并验证结果。

默认情况下,环境是在您安装 anaconda 的目录下的 envs 文件夹中创建的。对我来说是 $HOME/anaconda3。每次安装后,您都希望运行 du -sh $HOME/anaconda3/envs 以查看以人类可读格式使用的磁盘空间摘要。

$ du -sh $HOME/anaconda3/envs
4.0K /root/anaconda3/envs

$ conda create --name myenv1 -y
$ conda create --name myenv2 -y
$ conda install matplotlib -n myenv1 -y

$ du -sh $HOME/anaconda3/envs
338M /root/anaconda3/envs


$ conda install matplotlib -n myenv2 -y

$ du -sh $HOME/anaconda3/envs
357M /root/anaconda3/envs

使用了 19M,但不是两倍。

现在的问题是他们如何避免加倍空间,查看 envs 目录,我在任何地方都看不到任何符号链接(symbolic link)。于是查看了myenv2下的一些文件:

$ ls -lh /root/anaconda3/envs/myenv2/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf
-rw-rw-r--. 3 root root 688K Jul 1 06:19 /root/anaconda3/envs/myenv2/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans-Bold.ttf

权限之后、文件和组所有者之前的“3”是与文件关联的硬链接(hard link)数。通常一个文件只有一个。每个环境都必须创建另一个指向同一文件的硬链接(hard link)。

关于python - 单独的 Anaconda 环境是否会安装相同的包两次,占用两倍的存储空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57717410/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com