Windows与Linux下安装配置Python 2.7环境指南

季宁
季宁
发布时间:2026-11-08 | 4人浏览过
原创

本指南提供在Windows与Linux操作系统下安装、配置Python 2.7.18环境的完整实操方案,深入解析官方归档介质获取、系统Path环境变量注册、pip包管理器引导、多版本共存调度原理及核心故障排错。

环境配置实操 跨平台运维 最后维护基准:Python 2.7.18 / pip 20.3.4

在维护既有遗留系统、工业控制软件或特定硬件驱动的 SDK 时,部署已经官方停止维护(EOL)的 Python 2.7 环境依然是一项刚性工程需求。本文直接给出 Windows 64 位系统与主流 Linux 发行版(Ubuntu/Debian 与 CentOS/RHEL)下安装 Python 2.7.18 终结版本的具体步骤,剖析两类平台在路径注册、包管理工具引导、版本共存机制上的关键差异,并给出完整的验收验证指令与排错清单。

Windows与Linux下安装配置Python 2.7环境指南
图 0:Windows 与 Linux 平台下 Python 2.7.18 环境部署架构总览

一、准备工作与版本选型基线

Python 官方于 2020 年 4 月发布了 2.x 分支的最后一个维护补丁版本 Python 2.7.18,此后不再提供任何官方安全修补与功能更新。因此,无论在 Windows 还是 Linux 平台下进行部署,均应以 2.7.18 作为唯一定型基线,切忌使用早期存在安全漏洞与 TLS 握手缺陷的 2.7.x 小版本。

此外,由于现代 Python 官方包索引(PyPA)已经全面弃用了对 Python 2 的默认支持,配套的包管理工具 pip 能够运行在 Python 2.7 上的最终版本为 pip 20.3.4。在准备安装前,请预先明确这一版本边界,避免后续因盲目执行升级指令导致环境损坏。

二、Windows 系统下的安装与环境变量配置

在 Windows 10/11 或 Windows Server 环境中,Python 2.7 推荐通过官方 MSI 安装包进行部署。操作步骤清晰、固定,关键在于规范安装路径与准确配置系统级环境变量。

1. 获取安装介质

从 Python 官方历史归档库中下载 64 位安装程序:python-2.7.18.amd64.msi(若运行在 32 位老旧工业工控机上,则下载 python-2.7.18.msi)。

2. 执行安装向导

  1. 双击运行 python-2.7.18.amd64.msi,在安装范围页面务必选择 Install for all users(为所有用户安装),这会将解释器配置写入系统核心注册表项,便于后续启动器识别。
  2. 在目标安装目录(Select Destination Directory)页面,保持默认的根目录路径:C:\Python27\。切勿更改至 C:\Program Files\ 等包含空格或长字符的路径,早期 Python 2.7 的 C 扩展模块编译脚本对路径空格的处理极易发生路径截断崩溃。
  3. 在自定义功能(Customize Python 2.7.18)列表底部,找到“Add python.exe to Path”选项。尽管向导提供了此项,但其默认可能未勾选或在部分现代 Windows 系统中无法正确写入系统变量,建议保持默认继续完成安装,由我们通过系统面板手动注册以确保可控性。

3. 手动注册系统 Path 环境变量

打开系统环境变量配置界面的快捷方式:按键盘 Win + R 打开运行窗口,输入 sysdm.cpl 并回车,切换至“高级”选项卡,点击下方的“环境变量”。

在“系统变量”区域中找到名为 Path 的变量,点击“编辑”,在新打开的列表中依次点击“新建”,追加以下两条绝对路径:

C:\Python27C:\Python27\Scripts\

路径意义说明:第一条路径包含主解释器 python.exe 与标准动态链接库;第二条 Scripts 目录则是后续安装的 pip.exe、easy_install.exe 以及各第三方 CLI 工具脚本的默认存放位置。

4. 终端加载与验证

保存并关闭所有属性窗口。必须重新打开一个新的命令提示符(CMD)或 PowerShell 窗口,以便让当前终端进程继承更新后的环境变量注册表快照。输入以下指令验证:

:: 验证解释器版本
C:\> python -V
Python 2.7.18

:: 查看解释器实际二进制落盘位置
C:\> where python
C:\Python27\python.exe
Windows与Linux下安装配置Python 2.7环境指南
图 1:Windows 与 Linux 环境下 Python 2.7 安装与初始化标准步骤流

三、Linux 系统下的安装与配置方式

现代主流 Linux 发行版(如 Ubuntu 20.04+、Debian 11+、RHEL 8/9、Rocky Linux)的官方核心软件源均已彻底移除 python2 相关包。为了保证系统在任何现代 Linux 宿主机或容器中的稳定可用,从源码编译独立部署是业界最为严谨可复现的标准方案。

1. 前置安装构建工具与关键开发头文件

源码编译 Python 2.7 必须依赖本地 GCC 工具链及底层加密、压缩库。如果编译时缺少 libssl-dev 头文件,Python 编译过程虽不会报错中断,但会静默跳过 _ssl 模块的构建,导致编译出的 Python 无法建立任何 HTTPS 网络连接,彻底丧失使用 pip 的能力。

根据操作系统包管理器执行对应依赖安装:

# Ubuntu / Debian 系统:
sudo apt update
sudo apt install -y build-essential checkinstall     libreadline-gplv2-dev libncursesw5-dev libssl-dev     libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev zlib1g-dev libffi-dev

# CentOS 7 / RHEL 7 / Rocky Linux 系统:
sudo yum groupinstall -y "Development Tools"
sudo yum install -y openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel

2. 解压与配置编译参数

下载官方源码归档包并进入解压目录。配置阶段务必指定独立的 --prefix 隔离目录,并显式指定 Unicode 存储规范:

cd /tmp
wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz
tar -xzf Python-2.7.18.tgz
cd Python-2.7.18

# 配置独立安装路径至 /usr/local/python27,开启 UCS4 宽字符支持
./configure --prefix=/usr/local/python27 --enable-unicode=ucs4
关键原则:严禁执行 make install,必须使用 make altinstall!
标准的 make install 会强制创建名为 python 和 python-config 的公共软链接,直接覆盖 /usr/bin/python 或 /usr/local/bin/python。在当代 Linux 系统中,大量的系统管理脚本、自动化部署工具或运维框架(如 yum、dnf、cloud-init)均绑定特定的 Python 3 运行时,覆写系统默认软链接将引发系统级软件管理器瘫痪。

3. 编译并执行 altinstall

# 按照 CPU 核心数加速编译
make -j$(nproc)

# 安全部署至目标隔离目录
sudo make altinstall

4. 创建显式命令软链接

编译完成后,解释器二进制文件位于 /usr/local/python27/bin/python2.7。为了在 Shell 中直接调用,我们在系统公共搜索目录 /usr/local/bin 下建立明确带版本号的符号链接:

sudo ln -sf /usr/local/python27/bin/python2.7 /usr/local/bin/python2.7
sudo ln -sf /usr/local/python27/bin/python2.7 /usr/local/bin/python2

# 验证可用性与 SSL 模块是否内建成功
python2.7 -V
Python 2.7.18

python2.7 -c "import ssl; print(ssl.OPENSSL_VERSION)"
OpenSSL 1.1.1w  11 Sep 2023 (具体版本视宿主系统底层库而定)

四、Windows 与 Linux 环境机制对比与 Python 2/3 多版本共存

在绝大多数生产或开发机器上,Python 2.7 都是与 Python 3.8+ 等现代版本并存的。Windows 与 Linux 面对多版本共存时,底层的处理哲学与调度方式截然不同。下表对两者的关键机制进行了系统比对:

比较维度 Windows 平台环境机制 Linux 平台环境机制 差异关键原因与影响
默认解释器寻址 依赖系统 Path 列表中 python.exe 的首次命中 依赖 Shell $PATH 路径中具体可执行文件名称 Windows 两个版本都叫 python.exe,而 Linux 原生通过 python2 与 python3 分开命名
版本分流工具 官方提供 py.exe (Python Launcher) 调度器 无默认中心调度器,依赖命令显式分离或 update-alternatives Windows 注册表中存有各版本元数据,py -2 与 py -3 可精准分流,从根源消除命名冲突
包管理器二进制 同名 pip.exe 容易在 Scripts\ 间被后者覆盖 严格区分 pip2、pip2.7 与 pip3 Windows 若直接打 pip install 极易装错环境;必须使用 python -m pip 或 py -2 -m pip 调用
项目沙箱隔离 virtualenv -p C:\Python27\python.exe venv virtualenv -p /usr/local/bin/python2.7 venv Python 2.7 不包含内置 venv 模块(Python 3.3+ 才引入),必须统一依赖外置 virtualenv
Windows与Linux下安装配置Python 2.7环境指南
图 2:Windows 启动器分流模型与 Linux 二进制/虚拟环境隔离模型寻址原理对比

核心使用准则:

  • 在 Windows 环境下:日常执行脚本与模块调用,首选 Python Launcher 语法:py -2 script.py 或 py -2 -m pip install <package>。这能完全免疫 Path 环境变量中各 Python 版本由于前后顺序变动造成的解释器劫持。
  • 在 Linux 环境下:必须始终键入完整的 python2.7 或 python2,绝不在全局建立指向 Python 2 的无后缀 /usr/bin/python 链接。对于正式业务项目,务必通过 virtualenv 创建独立运行沙箱,隔离底层包空间。

五、包管理器 pip 与依赖环境维护

Python 2.7 安装完成后,默认并未包含现代意义上的 pip 工具,或者自带的 setuptools/pip 过于陈旧无法连接现有的 HTTPS 镜像源。为 Python 2.7 部署 pip 存在严格的版本与链路限制。

Windows与Linux下安装配置Python 2.7环境指南
图 3:Python 2.7 归档专用引导脚本获取与镜像源依赖解析链路

1. 获取并执行 2.7 专用 get-pip.py

PyPA 官方早已经将支持 Python 2.7 的引导脚本归档至专用子目录。直接下载根目录下的 https://bootstrap.pypa.io/get-pip.py 会抛出语法错误中断!必须请求带 pip/2.7/ 命名空间的专用链接:

# 获取专用引导脚本(Windows PowerShell 或 Linux curl 均可)
curl -O https://bootstrap.pypa.io/pip/2.7/get-pip.py

# Windows 下通过 Python 2 执行安装:
py -2 get-pip.py

# Linux 下通过编译的 python2.7 执行安装:
sudo /usr/local/python27/bin/python2.7 get-pip.py
sudo ln -sf /usr/local/python27/bin/pip2.7 /usr/local/bin/pip2.7
sudo ln -sf /usr/local/python27/bin/pip2.7 /usr/local/bin/pip2

2. 配置受信任的国内镜像源

由于老旧客户端在处理复杂 SSL 证书链时兼容性较差,配置国内镜像源并显式声明 trusted-host 可以极大提升下载成功率与稳定性。

Windows 配置文件路径:%APPDATA%\pip\pip.ini(即 C:\Users\<用户名>\AppData\Roaming\pip\pip.ini):

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn
timeout = 60

Linux 配置文件路径:~/.pip/pip.conf:

[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
trusted-host = mirrors.aliyun.com
timeout = 60
高危操作警告:切勿对 Python 2.7 的 pip 执行自我升级!
严禁执行 pip install --upgrade pip。当前 PyPA 上的最新 pip 均为 Python 3.7+ 打造,强制升级会直接触发不可逆的语法错误,导致当前 pip 工具链彻底损毁。

六、环境完整性验证与常见问题排查

完成上述安装后,请按以下步骤逐一进行系统验收。通过全维度的健康探测,确保当前 Python 2.7 具备生产就绪的运算与联网安装能力。

1. 四项核心指标验收脚本

在终端中执行以下单行 Python 探测指令:

python2.7 -c "import sys, ssl, urllib2; print('Python: ' + sys.version.split()[0]); print('Default Encoding: ' + sys.getdefaultencoding()); print('SSL Engine: ' + ssl.OPENSSL_VERSION); resp=urllib2.urlopen('https://pypi.org', timeout=5); print('Network TLS Handshake: ' + str(resp.getcode()))"

预期看到如下类似的标准输出结果(网络握手返回 200):

Python: 2.7.18
Default Encoding: ascii
SSL Engine: OpenSSL 1.1.1w  11 Sep 2023
Network TLS Handshake: 200
Windows与Linux下安装配置Python 2.7环境指南
图 4:Python 2.7 环境验收健康指标与三大典型故障快速排查矩阵

2. 常见疑难问题排查

  • 问题 1:Windows 提示“'python' 不是内部或外部命令”
    原因:环境变量 Path 中未包含安装目录,或修改环境变量后没有重启命令行窗口。
    排查解决:检查 C:\Python27 是否已正确写入系统 Path。关闭当前窗口,新开一个管理员权限 CMD 执行 echo %PATH% 确认。
  • 问题 2:Linux 执行 pip 时报“pip is configured with locations that require TLS/SSL, however ssl module in Python is not available”
    原因:编译 Python 2.7 时系统缺少 OpenSSL 开发包(如 libssl-dev 或 openssl-devel),导致底层的 _ssl.so 模块未成功构建。
    排查解决:执行 sudo apt install libssl-dev 或 sudo yum install openssl-devel,随后回到 Python 2.7 源码目录重新执行 ./configure --prefix=/usr/local/python27 --enable-unicode=ucs4 && make && sudo make altinstall 即可。
  • 问题 3:安装第三方包时出现“SyntaxError: invalid syntax”
    原因:现代第三方库(如 requests 2.28+、urllib3 2.0+)已彻底放弃 Python 2,代码中含有 f-string 或类型提示语法。
    排查解决:使用 pip 安装时必须显式指定适配 Python 2 的最终版本号,例如:
    pip2 install "requests<=2.27.1" "urllib3<1.27" "idna<2.11" "chardet<4.1"

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表