展开菜单
首页 精品内容 本月促销 装机必备 Windows PDF教程 macOS软件 IOS软件 Android AI 专题
全部分类

当前位置:

首页 > 编程开发 > Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法

Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法

针对Ubuntu与CentOS系统的Python安装指南,详细介绍APT/DNF/YUM包管理器安装、PPA扩展以及从源码编译安装Python的完整步骤、避坑注意事项与多版本共存方案。

本文目录

    假设你刚拿到一台全新的云服务器或虚拟机,正准备部署一个基于现代框架的后端服务,运行 python3 --version 却发现系统只自带了一个版本过低的 Python,甚至在某些精简镜像中根本没有默认解释器。直接强行替换默认命令可能导致包管理器或系统脚本瘫痪,而不加思考地拉取源码编译又常会遭遇缺少 OpenSSL、zlib 或 SQLite3 等底层库的构建错误。在 Linux 环境中安装 Python,通常有两大主流路径:系统包管理器快速安装 与 源码编译定制安装。本文将针对 Ubuntu 与 CentOS(含 RHEL 兼容发行版)两个代表性生态,梳理这两条路径的具体操作规范、核心注意事项及验证流程。

    Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法
    图 1:Linux 环境下 Python 两种安装方式的选择逻辑

    一、使用包管理器安装(推荐优先考虑)

    利用系统包管理器安装是最平稳、耗时最短的方式。包管理器会自动配置可执行路径、解析底层动态库依赖,并且由发行版官方维护安全更新。不过其局限在于官方源中提供的版本通常较保守;若需更新的版本,Ubuntu 可以引入社区维护的知名 PPA 源,CentOS 则可配合 EPEL 或 AppStream 模块。

    1. Ubuntu 系统(APT 与 PPA)

    Ubuntu 默认仓库中通常自带当前 LTS 发行版支持的主流 Python 版本。如果需要安装默认仓库中的最新维护包,直接使用 apt 即可:

    # 更新索引并安装 Python3 及其包管理工具
    sudo apt update
    sudo apt install -y python3 python3-pip python3-venv

    当你需要指定的次版本(例如在 Ubuntu 20.04/22.04 上安装更新的 Python 3.12),官方源往往尚未收录。此时业界通用的做法是引入 Ubuntu 核心开发者团队维护的 deadsnakes PPA 归档:

    # 安装管理软件源所需的工具
    sudo apt update
    sudo apt install -y software-properties-common
    
    # 添加 deadsnakes PPA 软件源
    sudo add-apt-repository ppa:deadsnakes/ppa
    sudo apt update
    
    # 安装指定版本的 Python 解释器与虚拟环境支持
    sudo apt install -y python3.12 python3.12-venv python3.12-dev
    提示:通过 PPA 安装的特定版本会被命名为 python3.12,它与 Ubuntu 基础系统自带的 /usr/bin/python3 彼此独立并存,不会破坏系统自带工具(如 apt 自身依赖的脚本)。

    2. CentOS / RHEL 系统(YUM 与 DNF)

    在 CentOS 7 或基于 RHEL 8/9 的兼容发行版(如 Rocky Linux、AlmaLinux)中,包管理机制有所不同。CentOS 7 默认的 YUM 源中 Python 版本较为陈旧,通常需启用 EPEL 源;而 RHEL/CentOS 8 及以上系统推荐使用模块流(module stream)或 DNF。

    在 CentOS 7 系统中的操作:

    # 启用企业版附加软件包 (EPEL) 源
    sudo yum install -y epel-release
    sudo yum update -y
    
    # 安装 EPEL 维护的 Python 3
    sudo yum install -y python3 python3-pip python3-devel

    在 CentOS Stream / Rocky Linux / RHEL 8 或 9 系统中的操作:

    # 列出可用 Python 模块流
    sudo dnf module list python3*
    
    # 启用并安装指定模块流(例如 python39 或 python311)
    sudo dnf module enable -y python39
    sudo dnf install -y python39 python39-pip python39-devel

    二、从源码编译安装(适用精确版本与隔离需求)

    如果需要在较旧的生产系统上运行特定版本、要求开启特定的解释器编译参数(例如 --enable-optimizations 提升运行时性能),或者处于无法连接外部 APT/PPA 源的企业私有内网,源码编译是唯一也是最可靠的途径。

    源码编译的核心逻辑分为四个阶段:安装构建工具与开发库、解压并执行预检查配置、多核并行编译、使用隔离方式安装至系统。

    Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法
    图 2:从依赖安装到安全写入的源码构建标准操作步骤

    第一步:补齐底层编译依赖

    这是编译成功最关键的一步。Python 依赖 C 编译器构建,其核心扩展模块(如处理 HTTPS 通信的 ssl、本地数据库 sqlite3、压缩模块 zlib)均需要宿主机提供头文件与静态/动态链接库。若提前不装,编译往往不会中断,但最终生成的 Python 将缺失核心模块,导致后续运行 pip install 时报 SSL 认证失败或解包错误。

    在 Ubuntu / Debian 体系上执行:

    sudo apt update
    sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev \
    libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev \
    libbz2-dev wget curl llvm make gcc

    在 CentOS 7 / RHEL 体系上执行:

    sudo yum groupinstall -y "Development Tools"
    sudo yum install -y openssl-devel bzip2-devel libffi-devel zlib-devel \
    readline-devel sqlite-devel wget curl gcc make

    第二步:下载并校验官方源码包

    推荐直接前往 Python 官方源码归档站点下载 Gzipped source tarball。以下以编译安装 Python 3.11.8 为例:

    # 切换至临时目录下载源码
    cd /usr/local/src
    sudo wget https://www.python.org/ftp/python/3.11.8/Python-3.11.8.tgz
    
    # 解压文件并进入源码根目录
    sudo tar -zxvf Python-3.11.8.tgz
    cd Python-3.11.8

    第三步:配置编译参数

    运行 ./configure 脚本来探测当前系统环境,生成 Makefile。建议启用 --enable-optimizations 参数,这会开启 Profile Guided Optimization (PGO) 和 LTO,通过运行一套基准测试套件让编译产物获得约 10%~20% 的运行速度提升(代价是编译时间会稍微延长)。

    # 配置检查环境与性能优化
    sudo ./configure --enable-optimizations

    第四步:多核编译与安装(核心警告:必须使用 altinstall)

    使用 nproc 命令获取当前机器可用的 CPU 核心数,并传递给 make -j 参数开启多线程编译,大幅缩减构建耗时。编译完成后,务必使用 make altinstall 替代 make install。

    # 获取核心数并启动多核并行编译
    sudo make -j $(nproc)
    
    # 执行安全安装
    sudo make altinstall
    严重警告:绝对不要在生产机上直接运行 sudo make install。标准的 make install 会直接把可执行文件写入为 /usr/local/bin/python3 甚至覆盖系统的默认符号链接,导致系统级管理工具(如 CentOS 依赖的 yum/dnf、Ubuntu 依赖的 unattended-upgrades)发生底层语法不兼容直接崩溃。make altinstall 会严格保留版本后缀(如 python3.11),跳过创建无后缀的软链接。

    三、核心底层结构对比:包管理器 vs 源码编译

    理解两者在 Linux 目录层级中的落脚点,能帮你快速定位路径冲突或依赖解析问题:

    Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法
    图 3:包管理器与源码编译的核心特性及系统路径对比

    四、安装验证与环境测试

    完成上述任一途径安装后,不能仅仅输入一次命令就默认成功。需要验证三项核心指标:解释器主程序、SSL 通信支持以及配套的虚拟环境构建。

    1. 验证可执行程序及位置

    # 检查版本(以安装 3.11 为例)
    python3.11 --version
    # 示例输出: Python 3.11.8
    
    # 查看实际二进制文件路径
    which python3.11
    # 源码编译默认输出: /usr/local/bin/python3.11
    # PPA/系统包管理器默认输出: /usr/bin/python3.11

    2. 验证关键扩展模块(SSL 与 SQLite)

    很多开发者在编译安装成功后,一使用 pip 下载包就报 Can't connect to HTTPS URL because the SSL module is not available。通过以下单行命令可直接测试:

    # 验证 SSL 与 SQLite 支持
    python3.11 -c "import ssl; import sqlite3; print('SSL 版本:', ssl.OPENSSL_VERSION); print('SQLite3 正常')"

    若能够正确打印出 OpenSSL 的版本号并输出“SQLite3 正常”,说明编译阶段的所有必要依赖库均已完整嵌入,后续的包管理与数据存取不会受阻。

    五、最佳实践:多版本共存与隔离运维

    在长期维护的 Linux 服务器上,极不建议去强制修改 /usr/bin/python3 的软链接指向。无论你采用何种方式安装了新的 Python 版本,推荐的使用流程均是通过 Python 虚拟环境(Virtual Environment) 将应用依赖和解释器绑定。

    # 1. 进入你的项目部署目录
    cd /data/www/my_project
    
    # 2. 使用刚才安装的特定版本创建隔离环境
    python3.11 -m venv venv
    
    # 3. 激活虚拟环境
    source venv/bin/activate
    
    # 4. 激活后,环境内直接使用通用的 python 与 pip,互不干扰
    (venv) $ which python
    # 输出: /data/www/my_project/venv/bin/python
    (venv) $ python --version
    # 输出: Python 3.11.8
    
    # 5. 退出当前虚拟环境
    (venv) $ deactivate
    Linux系统安装Python指南:Ubuntu/CentOS包管理器与源码编译方法
    图 4:Linux 系统下 Python 多版本共存与隔离运维结构

    只要遵守“系统默认解释器保持不动,外部扩展版本使用 altinstall 独立落盘,具体工程通过 venv 封装”的基本规范,无论是 Ubuntu 还是 CentOS,都能在确保操作系统底座稳定的同时,平滑运行各种版本的 Python 应用程序。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发
    相关文章 更多
    精品专题 更多
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    IOS软件

    正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

    AI

    正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw macOS版
    AionClaw macOS版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy macOS版
    Loomy macOS版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirBuddy 3 macOS版
    AirBuddy 3 macOS版

    AirBuddy 3 是面向 macOS 的蓝牙外设增强工具,可集中查看 AirPods、Beats 与苹果设备电量,提供快速连接、播放控制、电量提醒、桌面小组件和多台 Mac 外设接力等功能。

    AirServer macOS版
    AirServer macOS版

    AirServer macOS版可把 Mac 转换为无线投屏接收端,通过 AirPlay 或 Google Cast 接收手机、平板和电脑画面,并支持多设备同时连接、高清镜像及会话录制,适合家庭娱乐、课堂教学、会议演示和应用展示。

    AnyDesk macOS版
    AnyDesk macOS版

    AnyDesk macOS版是一款适用于远程办公、设备维护和客户支持的远程桌面工具,可连接并操作异地计算机,支持文件传输、无人值守访问、会话权限控制及跨平台协作。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。

    讯飞绘文 网页版
    讯飞绘文 网页版

    讯飞绘文网页版是科大讯飞推出的AI图文创作与内容运营工具,覆盖热点选题、文章生成、稿件校对、智能配图、排版发布和数据复盘等环节,适合自媒体创作者及内容团队在线使用。

    Maya(Autodesk Maya) Windows版
    Maya(Autodesk Maya) Windows版

    Autodesk Maya 是面向影视、电视、动画和游戏行业的专业三维制作软件,集多边形与 NURBS 建模、角色绑定、关键帧和动作捕捉动画、Bifrost 特效模拟、材质开发及 Arnold 渲染于一体,

    Aperty Windows版
    Aperty Windows版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw Windows版
    AionClaw Windows版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy Windows版
    Loomy Windows版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。