再见,Rust?还是仅仅“后会有期”?
\n您通过rustup安装了Rust——尝试过、实验过、写过几个程序。但开发者的生活难以预料:也许项目迁移到了其他技术栈,或者您只是想释放磁盘空间。又或者,您不小心弄坏了工具链,决定从头开始。无论如何,“如何卸载通过rustup安装的Rust”这个问题在搜索引擎中被搜索了数千次。这并非偶然:这个过程并不像卸载普通程序那样显而易见。
在本文中,我们不仅会讲解基本命令rustup self uninstall,还会深入探讨:如何检查卸载后残留了什么,如何只卸载特定版本的编译器,以及如果您改变主意想恢复该怎么办。准备好了:这将有趣、有用,并包含真实代码示例。
什么是rustup,为什么卸载它不仅仅是“删除文件夹”?
\n在您按下Delete键之前,让我们先弄清楚rustup到底是什么。它不仅仅是一个包管理器——它是Rust的安装程序和工具链管理器。它管理编译器rustc、构建工具cargo、文档和标准库的版本。当您通过rustup安装Rust时,它会创建:
- \n
~/.rustup目录——这里存放着所有工具链(稳定版、夜间版、测试版)和工具。 \n ~/.cargo目录——包缓存、通过cargo install安装的二进制文件以及配置。 \n PATH中的条目(通常在~/.bashrc、~/.zshrc或~/.profile中)。 \n
简单地删除~/.rustup文件夹会留下垃圾文件,并可能破坏您的终端。因此,正确的方法是使用内置工具rustup。
方法一:通过rustup self uninstall完全卸载(推荐)
\n最简单可靠的方法是运行命令rustup self uninstall。它会为您完成所有繁琐的工作:
rustup self uninstall\n执行后,您会看到确认对话框:
\nAre you sure you want to uninstall Rust? (y/N) y\ninfo: removing rustup home\ninfo: removing cargo home\ninfo: removing rustup binaries\ninfo: done. Rust has been uninstalled.\n幕后发生了什么:
\n- \n
- 删除
~/.rustup文件夹及其所有工具链。 \n - 删除
~/.cargo文件夹(注意:连同您放入其中的项目和已安装的二进制文件一起删除!)。 \n - 从
~/.cargo/bin中删除指向rustup、rustc、cargo的符号链接。 \n - 该命令不会修改shell配置文件(bashrc/zshrc)。您需要手动删除
source $HOME/.cargo/env或export PATH="$HOME/.cargo/bin:$PATH"这一行。 \n
重要提示:如果您通过cargo install安装了二进制文件(例如ripgrep、bat、fd),它们也会被删除。如果您计划重新安装,请先保存它们的列表:
cargo install --list > installed_crates.txt\n\n方法二:仅卸载特定工具链(无需完全卸载Rust)
\n如果您不想完全卸载Rust,而只是想摆脱特定版本(例如,过时的夜间构建版本),请使用命令rustup toolchain remove:
rustup toolchain remove nightly-2023-01-01\n检查已安装的工具链可以使用以下命令:
\nrustup toolchain list\n输出可能如下所示:
\nstable-x86_64-unknown-linux-gnu (default)\nnightly-x86_64-unknown-linux-gnu\n1.70.0-x86_64-unknown-linu