核心要点
- 系统自带的 Python 2.7:现代的 CentOS 7/8/9 系统为了兼容性,通常已经预装了 Python 2.7。你应该首先检查是否已经存在。
- 使用
yum(CentOS 6/7):对于 CentOS 6 和 7,这是最简单的方法。 - 使用
dnf(CentOS 8/9):对于 CentOS 8 和 9,推荐使用dnf,它是yum的现代替代品。 - 编译源码安装:这是最灵活但最复杂的方法,当
yum/dnf不可用或需要特定版本时使用。 - 强烈建议使用虚拟环境:为了不与系统工具依赖的 Python 冲突,请务必使用
virtualenv来管理你的项目。
检查系统是否已安装 Python 2.7 (推荐第一步)
在开始安装前,请先检查你的系统是否已经包含了 Python 2.7。

python2.7 --version
或者
python2 --version
如果输出类似 Python 2.7.18 的信息,说明你的系统已经安装了 Python 2.7,你可以直接跳到 “重要:创建虚拟环境” 部分。
如果提示 command not found,则说明你需要进行安装。
使用包管理器安装 (最推荐)
这是最简单、最安全的方法,因为它会自动处理依赖关系。

对于 CentOS 7
CentOS 7 的官方源中依然有 Python 2.7。
# 1. 更新软件包缓存 sudo yum update -y # 2. 安装 Python 2.7 及其开发工具和头文件 sudo yum install -y python27 python27-devel python27-pip python27-setuptools
对于 CentOS 8 / CentOS 9 / Rocky Linux / AlmaLinux
这些版本的官方源默认不包含 Python 2.7,你需要安装 PowerTools 软件源(对于 CentOS 8)或 crb 软件源(对于 CentOS 9/Rocky/AlmaLinux)来获取它。
对于 CentOS 8:
# 1. 安装 PowerTools 软件源 sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm sudo dnf install -y dnf-plugins-core sudo dnf config-manager --set-enabled powertools # 2. 安装 Python 2.7 sudo dnf install -y python2 python2-devel python2-pip
对于 CentOS 9 / Rocky Linux 9 / AlmaLinux 9:
# 1. 安装 CRB (Code Ready Builder) 软件源 sudo dnf install -y epel-release sudo dnf config-manager --set-enabled crb # 2. 安装 Python 2.7 sudo dnf install -y python2 python2-devel python2-pip
从源码编译安装 (备用方案)
当包管理器无法安装时(网络问题或官方源已完全移除),此方法非常可靠,但过程稍显复杂。
# 1. 安装编译所需的依赖包 sudo yum groupinstall -y "Development Tools" sudo yum install -y openssl-devel bzip2-devel xz-devel libffi-devel # 2. 下载 Python 2.7 的源码包 (这里以 2.7.18 为例,这是最后一个稳定版) wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz # 3. 解压 tar -xvf Python-2.7.18.tgz # 4. 进入源码目录 cd Python-2.7.18 # 5. 配置编译选项 # --prefix: 指定安装路径,推荐 /usr/local,避免覆盖系统 Python # --enable-optimizations: 优化编译,提升性能 ./configure --prefix=/usr/local --enable-optimizations # 6. 编译 (这个过程比较慢,-j 后面的数字是CPU核心数,可以加快编译速度) make -j$(nproc) # 7. 安装 sudo make altinstall # 注意:使用 altinstall 而不是 install,防止覆盖系统默认的 python 命令 # 8. 验证安装 /usr/local/bin/python2.7 --version
重要:创建虚拟环境 (强烈建议)
千万不要在系统全局使用 pip 安装包,这可能会破坏系统工具的依赖,正确的做法是为每个项目创建一个独立的虚拟环境。
-
确保你有
pip如果你使用yum或dnf安装,pip通常会一起被安装,如果你是源码编译的,你可能需要单独安装pip。# 使用 get-pip.py 脚本安装 pip (通用方法) curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py sudo python2.7 get-pip.py
-
安装
virtualenvsudo pip2.7 install virtualenv
-
创建并使用虚拟环境 假设你的项目在
my_project目录下:# 1. 创建项目目录 mkdir my_project cd my_project # 2. 创建一个名为 venv 的虚拟环境 # python2.7 -m virtualenv venv # 或者使用 virtualenv 命令 virtualenv -p /usr/bin/python2.7 venv # 3. 激活虚拟环境 source venv/bin/activate # (venv) # 看到这个前缀,说明虚拟环境已激活
-
在虚拟环境中工作 现在你可以在虚拟环境中安全地使用
pip安装包了,这些包只会影响到当前这个项目。# 安装你需要的包,Django 1.11 (venv) pip install "Django<2.0" # 查看已安装的包 (venv) pip list
-
退出虚拟环境 当你完成工作后,只需输入:
(venv) deactivate
常见问题与注意事项
-
python命令问题:在 CentOS 7+ 上,python命令通常指向 Python 3,如果你需要python命令指向 Python 2.7,可以创建一个符号链接:sudo ln -s /usr/bin/python2.7 /usr/bin/python
这可能会破坏依赖 Python 3 的系统工具! 强烈建议坚持使用
python2.7或python2命令。 -
pip命令问题:同样,pip命令可能指向pip3,请使用pip2.7或pip2来确保你操作的是 Python 2.7 的包管理器。 -
Python 2.7 已停止维护:请务必注意,Python 2.7 已经在 2025 年停止官方支持,这意味着它不再接收安全更新,存在安全风险,请尽快将你的项目迁移到 Python 3,此安装指南仅用于维护遗留项目。
