Linux系统执行yarn install安装依赖遇Unexpected Error求助
解决Yarn安装依赖时的EACCES连接错误
报错信息:
An unexpected error occurred: "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz: connect EACCES 2606:4700::6810:1523:443"
这个错误是尝试连接Yarn registry时遇到的权限或网络访问问题,以下是几种可行的解决方法:
强制使用IPv4连接
部分Linux系统对IPv6的支持不稳定,导致无法正常访问registry。可以通过环境变量强制Node.js优先使用IPv4:NODE_OPTIONS="--dns-result-order=ipv4first" yarn install若生效,可将该变量添加到shell配置文件(如
~/.bashrc或~/.zshrc)中,避免重复输入。修复Yarn缓存目录权限
之前使用sudo运行Yarn可能导致缓存目录被root用户占用,普通用户无法访问。先查看缓存目录路径:yarn cache dir再修改目录所有权为当前用户:
sudo chown -R $USER:$USER $(yarn cache dir)之后直接用普通用户执行
yarn install,不要再用sudo。检查防火墙/网络规则
确认系统防火墙允许出站HTTPS(443端口)请求。如果使用ufw防火墙:sudo ufw status若未允许443端口出站,执行:
sudo ufw allow out 443/tcp若使用iptables,需添加对应的放行规则。
重置Yarn配置
错误的Yarn配置可能导致连接问题,重置为默认配置:yarn config reset重置后再次尝试安装依赖。
内容的提问来源于stack exchange,提问作者Damian Truant
相关产品推荐
相关产品推荐

