下载慢问题解决方法
修改 Rust 的下载镜像为国内镜像地址,这种方法可以一劳永逸地解决问题,但配置起来可能稍显麻烦,需修改 $HOME/.cargo/config.toml 文件,添加新的服务提供商。有两种方式:
-
新增镜像地址:在
$HOME/.cargo/config.toml中添加新的注册服务,例如使用科大镜像,并在项目中引入依赖时指定该地址。- -
覆盖默认的镜像地址:推荐使用这种方式,因为它不需要修改
Cargo.toml文件,而是直接使用新的注册服务替代默认的crates.io。在$HOME/.cargo/config.toml中添加如下内容:
[source.crates-io]
replace-with = 'ustc'
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"
这样配置后,所有需要从 crates.io 下载的包都会从科大的镜像地址下载,提高速度。
其他镜像源:除了科大镜像,还可以选择其他镜像服务,如字节跳动提供的不限速服务,或清华大学、上海交通大学、rustcc 社区提供的镜像。
下载卡住问题解决方法
下载卡住通常是因为下载速度慢,特别是更新索引时。配置国内镜像后,这个问题应该会得到缓解。如果遇到 Blocking waiting for file lock on package cache 的错误,可能是因为另一个进程(如 VSCode 的 rust-analyzer 插件)正在下载并锁定了项目。解决方法包括增加下载速度、耐心等待或强行停止进程并删除 $HOME/.cargo/.package_cache 目录。