Linux下安装Python3:Ubuntu与CentOS的apt/yum命令指南
详细介绍在Ubuntu/Debian与CentOS/RHEL两大主流Linux发行版下,通过官方包管理器apt与yum/dnf快速安装Python3、pip及虚拟环境的完整命令与排坑指南。
一、安装前准备:检查当前系统的 Python 状态
绝大多数现代 Linux 发行版在安装时均已内置了某种版本的 Python。在敲下安装命令之前,首要任务是明确当前主机是否已有可用版本、其路径位于何处,以及属于哪个发行版分支。
1. 探测现有 Python 3 版本与二进制路径
打开终端,执行以下两条探测命令:
python3 --version
which python3
/usr/bin/python3
如果终端返回了具体的版本号(例如 Python 3.8.x、Python 3.10.x 或更高)及对应路径,说明系统已经就绪了 Python 3 运行环境。若版本已能满足程序需求,则无需重复安装,可直接跳转至后文配置 pip 与虚拟环境。
2. 确认操作系统发行版
不同 Linux 分支采用不同的软件仓库和包管理工具。通过读取 /etc/os-release 文件可以准确确认当前系统身份:
cat /etc/os-release | grep -E "^(ID|VERSION_ID)="
VERSION_ID="22.04"
VERSION_ID="7"
二、Ubuntu / Debian 系统:使用 apt 命令安装
在 Ubuntu 以及 Debian 体系中,软件包遵循高度模块化的解耦原则。这意味着仅安装 python3 元包通常只提供最基础的解释器本身,而用于依赖管理的 pip、创建沙盒的 venv 以及编译 C 扩展所需的头文件 python3-dev 都需要显式声明安装。
1. 刷新软件源索引
在安装前必须执行 apt update,以确保从镜像站点同步到最新的软件版本与依赖清单:
sudo apt update
2. 安装 Python 3 核心套件
推荐一次性装齐日常开发与部署所需的组件:解释器、包管理器、虚拟环境模块与 C 扩展开发库:
sudo apt install -y python3 python3-pip python3-venv python3-dev
参数解释:
python3:Python 3 核心解释器与基础标准库。python3-pip:官方推荐的第三方依赖包安装与管理工具。python3-venv:用于创建轻量级、隔离的虚拟环境模块(对应venv)。python3-dev:包含 Python 头文件与静态库,在后续pip安装含有 C/C++ 扩展的第三方库(如 numpy、uwsgi 等)时提供编译支持。
三、CentOS / RHEL 系统:使用 yum 或 dnf 命令安装
CentOS / Red Hat Enterprise Linux 家族根据主版本号分为两大阵营:CentOS 7 仍在使用传统的 yum 包管理器,而 CentOS 8、CentOS Stream、Rocky Linux 及 AlmaLinux 则已全面过渡到下一代 dnf(但为了兼容性仍保留了 yum 软链接)。
1. CentOS 7 环境(YUM 方案)
CentOS 7 原生自带的 Python 是用于支撑系统工具的 2.7 版本。若要安装 Python 3,建议先启用社区维护的 EPEL(Extra Packages for Enterprise Linux)高质量扩展源:
# 启用 EPEL 软件源
sudo yum install -y epel-release
# 刷新缓存并安装 Python 3
sudo yum install -y python3 python3-pip python3-devel
yum 自身及 urlgrabber)完全基于 Python 2 编写。如果强行把 /usr/bin/python 软链接更改为指向 python3,会导致 yum 发生语法错误并彻底瘫痪。
2. CentOS 8 / RHEL 8/9 / Rocky Linux / AlmaLinux(DNF 方案)
在 8 及更高版本中,Python 3 已经是官方主仓库的一等公民。系统默认集成了 dnf 包管理器:
sudo dnf install -y python3 python3-pip python3-devel
安装完成后,系统内部会建立标准软链接,python3 与 pip3 将立即可用。
四、安装后验证与虚拟环境标准规范
完成包管理器安装后,应通过以下步骤验证安装结果,并遵循现代 Python 工程隔离规范建立运行环境。
1. 验证版本与工具链路
python3 -V
pip3 -V
pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)
2. 为什么必须使用虚拟环境(PEP 668 规范)
在较新的发行版(如 Ubuntu 23.04+、Debian 12+)中,直接执行 pip3 install <package> 经常会遭遇 error: externally-managed-environment 报错。这是因为系统引入了 PEP 668 保护规范:系统包管理器(apt/yum)与 pip 同时操作 /usr/lib/python3/ 目录容易造成库文件冲突,从而破坏操作系统的正常运作。
规范的做法是为每一个实际项目创建独立的虚拟环境(Virtual Environment),所有业务相关的第三方库均安装在项目专属空间内。
3. 创建并激活虚拟环境的操作步骤
# 1. 建立项目专用目录并进入
mkdir -p ~/my_project && cd ~/my_project
# 2. 创建名为 .venv 的虚拟环境
python3 -m venv .venv
# 3. 激活虚拟环境
source .venv/bin/activate
# 4. 激活后,提示符通常会带有 (.venv) 前缀,此时直接使用 python 与 pip 即可
python -V
pip install requests
# 5. 完成工作后退出虚拟环境
deactivate
五、常见问题与排坑要点
1. 终端输入 python 提示 command not found
许多习惯在终端输入 python(而非 python3)的读者在执行命令时会提示找不到命令。这是因为主流 Linux 发行版为了避免破坏旧脚本,默认不绑定无版本号的 python 指向。
- 推荐方案(用户级别名):在当前用户的
~/.bashrc文件中追加alias python=python3,然后执行source ~/.bashrc。该方式安全、无侵入性。 - 系统级受控方案(Debian/Ubuntu):可以使用官方提供的替代项管理工具:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
2. CentOS 7 中 yum 误改 Python 软链接后的修复方法
如果不慎将 /usr/bin/python 替换为 Python 3,运行 yum 会提示 SyntaxError: invalid syntax。修复方法如下:
# 将默认 python 重新链接回原生的 Python 2.7
sudo rm -f /usr/bin/python
sudo ln -s /usr/bin/python2.7 /usr/bin/python
3. Ubuntu 下提示 No module named venv
在 Ubuntu/Debian 系统中,若直接运行 python3 -m venv 报错缺少模块,原因是 Debian 对 Python 标准库进行了拆分。只需执行 sudo apt install -y python3-venv 即可补齐该核心模块。
总结
在 Linux 系统中部署 Python 3 的核心原则可以概括为两点:尊重系统包管理器的归属与业务开发全面虚拟环境化。通过 Ubuntu 的 apt install python3 python3-pip python3-venv 或 CentOS 的 yum/dnf install python3 python3-pip,开发者可以在数十秒内获得兼顾系统稳定与安全更新的标准环境;再辅以 python3 -m venv,便能构筑起边界清晰、可靠高效的现代工程架构。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













