银河麒麟V10 Python 3.7 环境:3步离线安装pip与virtualenv(附源码包)
银河麒麟V10 Python 3.7环境3步离线安装pip与virtualenv附源码包在严格的内网环境中部署Python开发环境是许多企业和机构面临的现实挑战。银河麒麟V10作为国产操作系统的代表其安全性和稳定性备受青睐但离线环境下Python生态工具的缺失常常让开发者束手无策。本文将提供一套完整的离线解决方案只需三个核心步骤就能为系统自带的Python 3.7安装pip包管理工具和virtualenv虚拟环境并附赠可直接使用的安装脚本和源码包下载指引。1. 环境准备与源码包获取银河麒麟V10默认预装了Python 3.7解释器但缺少关键的包管理工具。离线环境下我们需要提前准备好两个核心组件的源码包setuptoolsPython包的基础构建系统pip的依赖项pipPython生态的包管理工具1.1 源码包下载指南在有网络连接的环境中访问以下官方地址下载对应版本的.tar.gz源码包组件下载地址版本选择建议setuptoolshttps://pypi.org/project/setuptools/#files选择与Python 3.7兼容的最新版piphttps://pypi.org/project/pip/#files同上提示建议下载文件名类似setuptools-68.2.2.tar.gz和pip-23.3.1.tar.gz的源码包避免使用.whl格式1.2 文件传输与目录结构将下载的压缩包通过安全介质如加密U盘传输到目标机器推荐建立以下目录结构mkdir -p ~/python-offline cd ~/python-offline # 假设已拷贝两个tar.gz文件到当前目录 ls -l # 应显示 # -rw-r--r-- 1 root root 1234567 pip-23.3.1.tar.gz # -rw-r--r-- 1 root root 987654 setuptools-68.2.2.tar.gz2. 三步安装流程2.1 安装setuptools基础组件setuptools是pip的依赖项必须先安装# 解压并进入目录 tar -zxvf setuptools-*.tar.gz cd setuptools-*/ # 使用系统python3安装 python3 setup.py install --prefix/usr/local # 验证安装 python3 -c import setuptools; print(setuptools.__version__)2.2 安装pip包管理工具返回上级目录安装pipcd .. tar -zxvf pip-*.tar.gz cd pip-*/ # 安装pip python3 setup.py install --prefix/usr/local # 将pip添加到PATH临时生效 export PATH$PATH:/usr/local/bin # 验证安装 pip3 --version2.3 离线安装virtualenv虽然可以直接用pip安装virtualenv但在完全离线环境下更推荐使用源码包方式提前下载virtualenv源码包同前文方法使用已安装的pip进行本地安装pip3 install --no-index --find-links~/python-offline virtualenv-*.tar.gz或者使用源码安装tar -zxvf virtualenv-*.tar.gz cd virtualenv-*/ python3 setup.py install3. 验证与使用指南3.1 环境验证清单执行以下命令确认安装成功# 检查工具版本 pip3 --version virtualenv --version # 测试包安装功能使用本地下载好的包 mkdir ~/test-pkg pip3 download -d ~/test-pkg requests pip3 install --no-index --find-links~/test-pkg requests # 测试虚拟环境 virtualenv --pythonpython3 ~/venv-test source ~/venv-test/bin/activate python -c import requests; print(requests.__version__) deactivate3.2 自动化安装脚本将以下脚本保存为install_pip_offline.sh与源码包放在同一目录#!/bin/bash set -e PKG_DIR$(cd $(dirname $0); pwd) PYTHON_BIN${PYTHON_BIN:-python3} INSTALL_PREFIX${INSTALL_PREFIX:-/usr/local} echo 开始离线安装Python工具链 echo 使用Python: $(which $PYTHON_BIN) echo 安装目录: $INSTALL_PREFIX install_pkg() { pkg_name$1 echo 正在安装 $pkg_name... tar -zxvf $PKG_DIR/$pkg_name*.tar.gz -C /tmp cd /tmp/$pkg_name-* $PYTHON_BIN setup.py install --prefix$INSTALL_PREFIX cd - /dev/null echo $pkg_name 安装完成 } install_pkg setuptools install_pkg pip install_pkg virtualenv echo 安装完成 echo 请将以下路径添加到PATH环境变量: echo export PATH\$PATH:$INSTALL_PREFIX/bin使用方式chmod x install_pip_offline.sh ./install_pip_offline.sh4. 高级配置与问题排查4.1 永久PATH配置为避免每次登录都需要重新设置PATH在~/.bashrc末尾添加export PATH$PATH:/usr/local/bin然后执行source ~/.bashrc4.2 常见错误解决方案错误现象可能原因解决方案command not foundPATH未正确配置检查/usr/local/bin是否在PATH中SSL证书验证失败系统时间/证书问题临时禁用验证pip3 install --trusted-host pypi.org --trusted-host files.pythonhosted.org缺少编译工具未安装gcc等开发工具通过麒麟软件仓库安装sudo yum install gcc make4.3 虚拟环境最佳实践创建项目专用环境virtualenv --pythonpython3 --system-site-packages ~/project_env常用命令备忘激活环境source ~/project_env/bin/activate退出环境deactivate冻结依赖pip3 freeze requirements.txt安装依赖pip3 install -r requirements.txt在实际项目部署中我们通常会建立一个内部PyPI镜像仓库来管理离线包。对于小型团队也可以简单使用pip download命令预先下载所有依赖包然后通过--find-links参数指定本地目录进行安装。这种方案虽然原始但在严格的内网环境中往往是最可靠的选择。