杰瑞科技汇

Ubuntu如何彻底卸载Python3.6?

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

Ubuntu如何彻底卸载Python3.6?-图1
(图片来源网络,侵删)

第一步:检查 Python 3.6 的用途(非常重要!)

在卸载之前,你必须确认 Python 3.6 是否被系统或其他重要软件所依赖。

  1. 检查系统关键依赖 使用 aptdepends 功能来检查哪些包依赖于 Python 3.6,如果这个列表很长或者包含 ubuntu-desktop, gnome-*, unity* 等核心系统包,那么强烈不建议卸载,否则可能导致系统无法启动或 GUI 界面消失。

    apt-cache depends python3.6
  2. 检查哪些包安装了 Python 3.6 这个命令会显示哪些软件包在安装时将 Python 3.6 作为依赖项,卸载 Python 3.6 时,这些包也可能会被一起卸载。

    apt-cache rdepends python3.6

分析结果:

Ubuntu如何彻底卸载Python3.6?-图2
(图片来源网络,侵删)
  • 如果输出结果主要是 python3.6 本身和一些无关紧要的包,那么相对安全。
  • 如果输出结果包含大量你正在使用的软件(如 Docker, Ansible, VSCode 插件等)或系统核心组件,你需要三思而后行,更好的选择是使用 update-alternatives 来管理多个 Python 版本,而不是卸载。

第二步:卸载 Python 3.6 及其相关包

如果你确认卸载是安全的,可以继续以下步骤。

警告: 以下操作将删除 Python 3.6 及其所有依赖项,请在执行前确保你已经备份了重要数据,并且理解潜在的风险。

  1. 完全卸载 Python 3.6 使用 purge 命令,它会删除包本身以及其配置文件。

    sudo apt purge python3.6
  2. (推荐)同时卸载 libpython3.6 很多 Python 包会链接到这个库,最好一并清理。

    sudo apt purge libpython3.6
  3. (可选)卸载 python3.6-devpython3.6-minimal 如果你之前安装了开发包或最小化包,也应该一并卸载。

    sudo apt purge python3.6-dev python3.6-minimal
  4. 自动清理不再需要的依赖包 apt 在卸载主包后,可能会留下一些其他包不再需要的依赖项,运行以下命令可以自动清理它们,释放磁盘空间。

    sudo apt autoremove
  5. 清理 apt 缓存 这是一个好习惯,可以清理下载的包文件。

    sudo apt clean

第三步:验证卸载和后续清理

  1. 验证 Python 3.6 是否已移除 检查 python3.6 命令是否还存在。

    python3.6 --version

    如果命令不存在或提示 "command not found",说明卸载成功。

  2. 检查系统默认 Python 版本 Ubuntu 会将 python3 命令指向最新的 Python 版本(Python 3.8, 3.10 等),检查一下当前指向的版本。

    python3 --version

    如果这个命令仍然指向 3.6,说明你的系统配置可能有问题,或者你需要使用 update-alternatives 来修复它。

  3. 修复 pippy 命令(如果它们指向了 3.6) pippy 命令仍然指向已卸载的 Python 3.6,它们会失效,你需要重新安装它们,让 apt 将它们链接到当前可用的 Python 版本。

    sudo apt install python3-pip
    # 如果你使用过 python3-distutils,也重新安装一下
    sudo apt install python3-distutils

更安全的替代方案:使用 update-alternatives

如果你只是想在命令行中方便地切换 Python 版本,而不是彻底删除 3.6,强烈推荐使用 update-alternatives,这种方法不会破坏系统依赖。

  1. 安装 python3.6python3.6-venv 如果你的系统没有安装,但你想保留它以便切换,可以安装:

    sudo apt install python3.6 python3.6-venv
  2. 将 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
  3. 切换 Python 版本 运行以下命令,然后根据提示选择你想要使用的版本(输入序号,如 12)。

    sudo update-alternatives --config python3
  4. 切换 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 是最佳实践,只有在绝对必要且你已经评估好风险后,才选择完全卸载。

分享:
扫描分享到社交APP
上一篇
下一篇