CentOS 上 Rust 版本管理与更新
一 推荐方式 rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh,安装后执行:source $HOME/.cargo/env 使环境变量生效。rustup show;检查并更新工具链 rustup update(或仅更新稳定版 rustup update stable)。rustup toolchain install stable|beta|nightly;安装指定版本 rustup toolchain install 1.85.0;全局切换 rustup default stable|1.85.0;按项目切换 rustup override set nightly 或在项目根目录放置 rust-toolchain.toml。rustup component add rustfmt clippy rust-src;查看组件与工具链路径 rustup which rustc、rustup which cargo。rustup default stable-2024-01-01;需要可复现构建时优先使用日期钉定的 nightly(如 nightly-2025-06-15)。二 系统包管理器安装与更新
sudo yum install -y epel-release;添加仓库(示例为清华镜像):sudo tee /etc/yum.repos.d/rust.repo <<EOF
[rust]
name=Rust Programming Language
baseurl=https://mirrors.tuna.tsinghua.edu.cn/rust-static/rust
enabled=1
gpgcheck=1
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/rust-static/rust.asc
EOF
安装与更新:sudo yum update && sudo yum install -y rust cargo;升级时执行 sudo yum update rust cargo。三 手动安装与更新
/usr/local):tar -xzf rustc-<version>-x86_64-unknown-linux-gnu.tar.gz -C /usr/local
~/.bashrc 或 /etc/profile.d/rust.sh):export PATH=/usr/local/rustc-<version>/bin:$PATH
使配置生效:source ~/.bashrc;验证:rustc --version、cargo --version。四 多版本共存与工程化最佳实践
rust-toolchain.toml 或 rustup override set <toolchain> 固定版本,确保团队成员与 CI 使用一致工具链。clippy/rustfmt),可选择已知可用的日期版本或临时使用 --force(不推荐生产)。~/.rustup 与 ~/.cargo/registry,以“工具链版本 + Cargo.lock”为缓存键;切换工具链后执行 cargo clean && cargo build 以避免缓存不兼容。rustup target add <triple> 安装目标标准库;在 .cargo/config.toml 为目标指定 linker 与必要的 rustflags,链接器与 C 运行时由系统包管理器或容器镜像提供。五 常见问题与排查
source $HOME/.cargo/env,或确认 ~/.cargo/bin 已加入 PATH。nightly-2024-01-01),或使用 --profile minimal 分步安装;必要时在 CI 中单独验证 nightly 的可用性。cargo clean,必要时回滚工具链 rustup default <previous>。