发布于2026-07-13 阅读(0)
扫一扫,手机访问
Rust 这几年在系统编程领域风头正劲,越来越多的开发者开始在 Ubuntu 上搭建 Rust 开发环境。不过,版本管理这事儿,如果一开始没搞对路子,后面升级、切换版本时容易踩坑。这篇文章就聊透在 Ubuntu 上如何用最靠谱的方式——rustup——搞定 Rust 版本升级。

在 Ubuntu 上管理 Rust 工具链,最推荐的方式还是用官方提供的 rustup。它能让你在稳定版、测试版、Nightly 多个版本之间自由切换,并且所有版本可以共存,互不干扰。如果你之前图省事直接用 apt 装了系统包(比如 rustc 或 cargo),这里要留个心眼——apt 版的 Rust 和 rustup 版混用容易出冲突。建议先把系统包卸干净,再让 rustup 全面接管。
动手之前,先查查当前版本心里有数:rustc -V、cargo -V、rustup -V。有一点要明确:如果你想第一时间用上 Rust 的最新特性和修复,rustup 绝对是比发行版仓库更靠谱的选择。至于国内网络环境导致下载慢的问题,后面会专门说镜像加速的事。
如果还没装 rustup,或者想从头来过,流程很简单:
apt 装过旧版:sudo apt remove rustc cargo,干净利落。curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh。安装完成后别忘了让环境变量生效:source $HOME/.cargo/env。rustup update。rustc -V 和 cargo -V,确认版本已更新。日常管理里还有一些高频操作:
rustup showrustup default stable|nightly|<版本号>rustup install <版本号>rustup toolchain listrustup run <工具链> cargo buildrustup toolchain uninstall <版本号>rustup checkrustup self updaterustup component list 查看可用组件,rustup component add clippy rustfmt rust-src 添加常用组件,rustup component remove <组件名> 移除不需要的。在国内用 rustup,最头疼的就是下载速度。解决方案是设置镜像源,让下载走国内 CDN。在运行安装脚本之前,或者在当前 shell 中导出以下环境变量:
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-staticexport RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup设好之后,无论是 rustup update 还是第一次下载工具链,速度都会有质的提升。这条配置对国内用户来说,几乎算是标配了。
实际开发中,不同项目可能依赖不同版本的 Rust。rustup 在这方面做得相当灵活:
rustup toolchain install nightly 就行。rustup default nightly,切回来用 rustup default stable。rustup override set nightly,这样只有这个项目会使用指定版本。查看当前生效的工具链用 rustup show。组件管理上,除了前面提到的添加组件命令,还有一个叫 Profile 的预设机制。用 rustup show profile 可以查看当前 Profile,用 rustup set profile minimal|default|complete 切换。default 包含 rustc、cargo、rust-std、rust-docs、clippy、rustfmt,日常开发基本够用;minimal 更精简;complete 则把所有能装的组件都拉下来。
跟 Rust 打交道时间长了,难免遇到些小状况:
命令未找到:这多半是环境变量没生效。先执行 source $HOME/.cargo/env,或者用 which cargo、which rustup 确认路径是不是 ~/.cargo/bin。如果每次都找不到命令,检查一下 .bashrc 或 .zshrc 里有没有添加 $HOME/.cargo/bin 到 PATH。
与系统包冲突:apt 装的旧版本和 rustup 管理的新版混在一起,容易出现奇奇怪怪的问题。解决方案就是釜底抽薪:sudo apt remove rustc cargo,之后只认 rustup 管理的那一套。
特定项目要求特定版本:这个场景很常见。用 rustup override set <版本号> 在项目目录锁定版本,或者临时跑一下 rustup run <版本号> cargo build。如果需要全局切换,再用 rustup default。
老系统(比如 Ubuntu 18.04)默认仓库版本太旧:有些项目对 Rust 版本有最低要求,比如 asus-nb-ctrl 要求 Rust ≥ 1.40。这时候别指望系统仓库,直接用 rustup 装新版本就好。
下一篇:HDFS副本因子怎样调整最佳
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8