以下是详细的步骤和注意事项,强烈建议你按照顺序仔细阅读并执行。

第一步:检查 Python 3.6 的用途(非常重要!)
在卸载之前,你必须确认 Python 3.6 是否被系统或其他重要软件所依赖。
-
检查系统关键依赖 使用
apt的depends功能来检查哪些包依赖于 Python 3.6,如果这个列表很长或者包含ubuntu-desktop,gnome-*,unity*等核心系统包,那么强烈不建议卸载,否则可能导致系统无法启动或 GUI 界面消失。apt-cache depends python3.6
-
检查哪些包安装了 Python 3.6 这个命令会显示哪些软件包在安装时将 Python 3.6 作为依赖项,卸载 Python 3.6 时,这些包也可能会被一起卸载。
apt-cache rdepends python3.6
分析结果:

- 如果输出结果主要是
python3.6本身和一些无关紧要的包,那么相对安全。 - 如果输出结果包含大量你正在使用的软件(如
Docker,Ansible,VSCode插件等)或系统核心组件,你需要三思而后行,更好的选择是使用update-alternatives来管理多个 Python 版本,而不是卸载。
第二步:卸载 Python 3.6 及其相关包
如果你确认卸载是安全的,可以继续以下步骤。
警告: 以下操作将删除 Python 3.6 及其所有依赖项,请在执行前确保你已经备份了重要数据,并且理解潜在的风险。
-
完全卸载 Python 3.6 使用
purge命令,它会删除包本身以及其配置文件。sudo apt purge python3.6
-
(推荐)同时卸载
libpython3.6库 很多 Python 包会链接到这个库,最好一并清理。sudo apt purge libpython3.6
-
(可选)卸载
python3.6-dev和python3.6-minimal如果你之前安装了开发包或最小化包,也应该一并卸载。sudo apt purge python3.6-dev python3.6-minimal
-
自动清理不再需要的依赖包
apt在卸载主包后,可能会留下一些其他包不再需要的依赖项,运行以下命令可以自动清理它们,释放磁盘空间。sudo apt autoremove
-
清理 apt 缓存 这是一个好习惯,可以清理下载的包文件。
sudo apt clean
第三步:验证卸载和后续清理
-
验证 Python 3.6 是否已移除 检查
python3.6命令是否还存在。python3.6 --version
如果命令不存在或提示 "command not found",说明卸载成功。
-
检查系统默认 Python 版本 Ubuntu 会将
python3命令指向最新的 Python 版本(Python 3.8, 3.10 等),检查一下当前指向的版本。python3 --version
如果这个命令仍然指向 3.6,说明你的系统配置可能有问题,或者你需要使用
update-alternatives来修复它。 -
修复
pip和py命令(如果它们指向了 3.6)pip或py命令仍然指向已卸载的 Python 3.6,它们会失效,你需要重新安装它们,让apt将它们链接到当前可用的 Python 版本。sudo apt install python3-pip # 如果你使用过 python3-distutils,也重新安装一下 sudo apt install python3-distutils
更安全的替代方案:使用 update-alternatives
如果你只是想在命令行中方便地切换 Python 版本,而不是彻底删除 3.6,强烈推荐使用 update-alternatives,这种方法不会破坏系统依赖。
-
安装
python3.6和python3.6-venv如果你的系统没有安装,但你想保留它以便切换,可以安装:sudo apt install python3.6 python3.6-venv
-
将 Python 3.6 注册到
update-alternatives这个命令告诉系统python3这个命令可以由多个版本提供。# --install <link> <name> <path> <priority> # priority: 数字越大,优先级越高,默认情况下会被优先选择 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2 # 假设你还有3.8
-
切换 Python 版本 运行以下命令,然后根据提示选择你想要使用的版本(输入序号,如
1或2)。sudo update-alternatives --config python3
-
切换
pip版本pip命令也需要单独配置。sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3.8 2 # 假设你还有3.8的pip sudo update-alternatives --config pip
这样,你就可以在不卸载 Python 3.6 的情况下,自由地在不同版本间切换,既保留了兼容性,又不会破坏系统。
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 完全卸载 | 彻底释放空间,移除旧版本。 | 风险高,可能破坏系统依赖,导致软件损坏或系统不稳定。 | 当你确定没有任何软件依赖它,并且不再需要它时。 |
update-alternatives |
安全,灵活,不破坏系统,方便版本切换。 | Python 3.6 的安装包仍然保留在系统上。 | 强烈推荐的日常开发和管理多版本 Python 的方法。 |
对于绝大多数用户来说,使用 update-alternatives 是最佳实践,只有在绝对必要且你已经评估好风险后,才选择完全卸载。
