【Bug】解决 Ubuntu 中 “error: Unable to Find Python3 Executable” 错误

解决 Ubuntu 中 "Unable to Find Python3 Executable" 错误

  • 在 Ubuntu 系统上使用 Python 进行开发时,遇到找不到 python3 可执行文件的错误。

主要问题是无法正常打开终端(原生与terminator),找不到python3,且无法执行

bash 复制代码
sudo apt update
sudo apt upgrade

等命令,具体的错误信息如下:

bash 复制代码
error: unable to find python3 executable
/usr/bin/env: "python3": 没有那个文件或目录

直接尝试重装python会出现报错:

1 问题原因

  • 出现这个问题的原因是系统中缺少 python3 的符号链接。虽然系统已经安装了 Python 3.8,但
    /usr/bin/python3 符号链接不存在,导致系统在运行一些 Python 程序时无法找到 python3 可执行文件。

在系统中,运行以下命令可以看到 python3 不存在:

bash 复制代码
ls /usr/bin/python*

输出如下:

bash 复制代码
/usr/bin/python2
/usr/bin/python2.7
/usr/bin/python3.8
/usr/bin/python3.8-config
/usr/bin/python3.8-coverage
......

如上所示,系统中是安装了 python3.8的,但没有 python3 这个符号链接。

2 解决方案

要解决这个问题,我们只需手动创建一个指向 python3.8 的符号链接。以下是具体的步骤:

第一步:检查系统中的 Python 版本

首先,确认系统中已经安装了 python3.8 或其他版本的 Python。你可以使用以下命令来查看:

bash 复制代码
ls /usr/bin/python*

输出中应该包含 python3.8 或其他版本的 Python 3.x。

第二步:创建 python3 符号链接

使用以下命令创建一个符号链接,指向 python3.8:

bash 复制代码
sudo ln -s /usr/bin/python3.8 /usr/bin/python3

第三步:验证 Python3 是否正常工作

符号链接创建完成后,运行以下命令检查是否可以正常调用 python3:

bash 复制代码
python3 --version

如果一切顺利,终端应该输出类似以下内容:

bash 复制代码
Python 3.8.x

常见问题

  1. 如果你的系统中没有安装 Python 3.8

    你可以使用以下命令安装:

    bash 复制代码
    sudo apt update
    sudo apt install python3.8
  2. APT 更新错误

    在执行 apt update 时,如果出现类似以下错误:

    bash 复制代码
    E: Problem executing scripts APT::Update::Post-Invoke-Success

    这是由于某些脚本依赖缺失,尝试运行以下命令来修复:

    bash 复制代码
    sudo apt --fix-broken install

3总结

通过手动创建 python3 的符号链接,可以解决 Ubuntu 系统中找不到 Python3 可执行文件的问题。

这个问题主要是因为符号链接缺失,但并不意味着系统中缺少 Python 3。

相关推荐
东城居士14 分钟前
理解设备树下的platform驱动编写
linux·嵌入式系统
小义_18 分钟前
Linux 补充
linux·服务器
晴天的雨.99220 分钟前
【Linux】Shell 命令以及运行原理+权限管理
linux·运维·服务器
djjjx.25 分钟前
Linux工具篇 (六):GDB 调试从底层逻辑到高阶实战
linux·运维·服务器·gdb
coward911 小时前
RK3576 双千兆 GMAC 驱动加载异常问题排查与总结
linux
幼儿园蛋小黄1 小时前
从设备树到 ARM 驱动:嵌入式 Linux 驱动开发学习总结
linux·arm开发·驱动开发
dishugj1 小时前
HANA集群计划内切换与维护操作
java·linux·数据库
爱吃香菜的初学者3 小时前
十四.Linux——消息队列
linux·运维·开发语言
缘友一世4 小时前
GLM5.3 flash cybersec本地部署[5]:生产运维与故障恢复
ubuntu·vllm·glm5.3 flash
Apipi*10 小时前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理