python系列&deep_study系列:conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3
conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3
conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3
错误
我在使用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
底下评论
问题一:
请问在windows
下该怎么处理喃
文章作者回复:
抱歉,比较少看csdn
的消息。在Windows
上我没有遇见过这个问题,一种类似的思路是打开base
环境下的pkgs
,右键属性,里面有一个安全,给Users
组赋予足够的权限
问题二:
博主,我也是Windows系统
,安全选项里面好像没有赋予权限,我是家庭版的
问题三:
搜这个博客
Anaconda使用Conda安装时报错InvalidArchiveError
问题四:
解决方法那里没看懂啊 博主写的那个是代码吗 是要写在哪里呢
文章作者回复:
我这边是Linux
的环境,代码在命令运行
问题五:
博主我和您的错误一样,但但我用的公共服务器,咋办呢?
问题六:
其他尝试里的:清缓存, 管用!
问题七:
window
下面出错,可以用cmd
打开这个环境,再重新下载,可能是cmd
有管理员权限?
问题八:
window
下面出错,可以用管理员的权限打开CMD
,我用这个方法解决了
问题九:
请问这个777
的权限该如何改回去?服务器公用的
conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3