conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3

当使用conda创建虚拟环境时,如果遇到因包权限问题导致的InvalidArchiveError,可能是因为包已被其他用户下载,造成权限不足。解决方法包括:1) 给anaconda安装路径下的pkgs文件夹所有文件分配777权限;2) 尝试关闭所有Python进程;3) 清理conda缓存;4) 使用--download-only选项创建环境。但请注意,直接修改权限可能带来安全风险。

错误
我在使用conda进行虚拟环境创建的时候,弹出来一大堆错误信息,每一条大概是这样的。
InvalidArchiveError(‘Error with archive /usr/local/Anaconda3/pkgs/sqlite-3.36.0-hc218d9a_0stdo5ow0/info-sqlite-3.36.0-hc218d9a_0.tar.zst. You probably need to delete and re-download or re-create this file. Message from libarchive was:\n\nCould not unlink’)

原因

conda创建虚拟环境时,发现有些必要包之前已经被下载过了,然后它就会建立软连接来代替重新下载。但是如果原来的包是由另一个用户下载的,就会出现权限问题,无法创建软连接。

解决方法
开放pkgs(pkgs在anaconda安装路径下)下所有文件的权限,让所有用户都可以访问。注:此方法需要有足够的权限
查找anaconda的安装路径可以看conda的的base环境所在的位置
conda env list | grep base
然后更改pkgs下面的文件权限为777(所有人可读可写可执行)
sudo chmod -R 777 /usr/local/Anaconda3/pkgs/

其他尝试
这里记录了下尝试的其他方案,可能会有用,但是在我这个问题上没有得到解决。
1、关闭所有正在执行的python程序,包括jupyter notebook

ps aux|grep python|grep -v grep|cut -c 9-15|xargs kill -9

2、清理pkgs下的无用的包和缓存数据,详细信息可参考conda clean命令

conda clean -p		# 删除未使用的包
conda clean -t		# 删除缓存的tarballs包
conda clean -a		# 删除所有缓存的数据(包括索引缓存等 )

3、使用–download-only参数

conda create -n environment python=3.8 --download-only
InvalidArchiveError是一个conda环境下的错误,它通常是由于安装包的损坏或者下载错误导致的。解决这个问题的方法有以下几种: 1. 删除并重新下载或重新创建出错的文件。根据引用的错误信息,你可以尝试删除具体报错的文件,然后重新下载或重新创建它。这通常可以解决由于文件损坏或下载错误导致的InvalidArchiveError。 2. 检查文件权限。根据引用的建议,你可以检查安装路径下的文件权限。对于Windows电脑,你可以右击Anaconda3文件夹,选择属性,然后在安全选项卡中编辑权限,勾选上"写入"权限。对于Mac电脑,你可以使用sudo chown命令将anaconda3文件夹的权限更改为你的用户名。完成安装后,你可以将权限改回来。 这些方法可以帮助你解决InvalidArchiveError错误。如果问题仍然存在,你可以尝试在conda官方论坛或社区寻求帮助,以获取更具体的解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Conda报错InvalidArchiveError的几种解决办法](https://blog.csdn.net/maofei47/article/details/122486220)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [conda创建虚拟环境报错: InvalidArchiveError(Error with archive /usr/local/Anaconda3](https://blog.csdn.net/eaxy_z/article/details/120293066)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Conda报错InvalidArchiveError](https://blog.csdn.net/qq_44750620/article/details/105527581)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值