如何在在 CentOS 中安装 Python 3
一、方法 1: 使用 `yum` 安装(CentOS 7 及以上)步骤: 方法 2: 使用 Software Collections (SCL) 安装(适用于 CentOS 7)步骤: 方法 3: 从源代码编译安装(适用于高级用户)步骤: 方法 4: 使用 `pyenv` 安装(适用于多版本管理)安装 `pyenv`: 总结 二、1. **开发工具包**2. **必备依赖包**3. **Python 特定依赖包**4. **XML 和开发库**5. **其他有用的依赖**6. **Image 处理和音频处理相关库**7. **数据库相关开发库**8. **其他支持库**9. **文档生成库**10. **网络相关库**总结 三、1. **准备工作**1.1 下载 Python 源代码包1.2 下载依赖包 2. **传输文件到离线系统**3. **安装依赖包**4. **编译并安装 Python 3**5. **验证安装**6. **(可选)安装 pip**总结流程图
一、
在 CentOS 中安装 Python 3 可以通过几种方法实现,具体取决于你的 CentOS 版本。以下是最常用的方法:
方法 1: 使用 yum
安装(CentOS 7 及以上)
在 CentOS 7 及以上版本中,可以通过 yum
包管理器直接安装 Python 3。
步骤:
更新包管理器:
sudo yum -y update
安装 Python 3:
CentOS 7 默认使用 Python 2.7,你可以安装 Python 3 并保留 Python 2。
sudo yum -y install python3
验证安装:
安装完成后,你可以通过以下命令验证是否安装成功:
python3 --version
如果显示 Python 3.x.x 版本号,说明安装成功。
安装 pip(Python 包管理器):
通常,pip
会随 Python 3 一起安装,但你也可以手动安装或升级:
sudo yum install python3-pip
验证 pip
是否安装成功:
pip3 --version
方法 2: 使用 Software Collections (SCL) 安装(适用于 CentOS 7)
Software Collections (SCL) 是一种允许在 CentOS 中安装和使用多个软件版本的工具,包括 Python 3。
步骤:
安装 SCL:
sudo yum -y install centos-release-scl
安装 Python 3:
使用 SCL 安装 Python 3.6(或其他版本):
sudo yum -y install rh-python36
启用 Python 3:
安装完成后,启用 Python 3 环境:
scl enable rh-python36 bash
验证安装:
python3 --version
方法 3: 从源代码编译安装(适用于高级用户)
如果你需要特定版本的 Python 3,或者在 CentOS 6 中无法通过 yum
安装 Python 3,你可以选择从源代码编译安装。
步骤:
安装依赖包:
首先,安装构建 Python 所需的依赖包:
sudo yum -y groupinstall "Development Tools"sudo yum -y install wget openssl-devel bzip2-devel libffi-devel
下载 Python 源代码:
选择你需要的 Python 版本,下载源代码。例如,下载 Python 3.9.1:
cd /usr/srcsudo wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
解压源代码:
sudo tar xzf Python-3.9.1.tgzcd Python-3.9.1
编译 Python:
配置和编译 Python:
sudo ./configure --enable-optimizationssudo make altinstall
注意:使用 altinstall
而不是 install
,以避免覆盖系统的默认 Python 版本。
验证安装:
编译完成后,验证安装:
python3.9 --version
安装 pip:
如果没有随 Python 一起安装 pip
,可以手动安装:
sudo python3.9 -m ensurepip
方法 4: 使用 pyenv
安装(适用于多版本管理)
pyenv
是一个非常灵活的 Python 版本管理工具,允许你安装和管理多个 Python 版本。
安装 pyenv
:
安装依赖:
sudo yum -y install git gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel
安装 pyenv
:
curl https://pyenv.run | bash
配置环境变量:
在 .bashrc
或 .bash_profile
中添加以下内容:
export PATH="$HOME/.pyenv/bin:$PATH"eval "$(pyenv init --path)"eval "$(pyenv virtualenv-init -)"
安装 Python:
使用 pyenv
安装 Python 3.9.1:
pyenv install 3.9.1pyenv global 3.9.1
验证安装:
python --version
总结
CentOS 7 及以上:使用yum
或 SCL
安装 Python 3 是最简单的方法。CentOS 6:推荐使用从源代码编译安装方法。多版本管理:使用 pyenv
可以方便地管理和切换多个 Python 版本。 通过以上方法,你可以在 CentOS 系统上顺利安装和管理 Python 3。
二、
在 CentOS 上安装 Python 之前,安装所需的依赖包可以确保 Python 的编译和运行顺利。以下是安装 Python 3 之前建议安装的一些常见依赖包,这些依赖包适用于从源代码编译 Python 以及确保 Python 和相关工具的正常运行。
1. 开发工具包
安装开发工具包 (Development Tools
),包含编译器和其他构建软件所需的基本工具:
sudo yum -y groupinstall "Development Tools"
2. 必备依赖包
这些是 Python 需要的基本依赖包,确保编译和一些常见的 Python 库能够正常工作:
sudo yum -y install \ wget \ make \ gcc \ gcc-c++ \ zlib-devel \ bzip2 \ bzip2-devel \ readline-devel \ sqlite \ sqlite-devel \ openssl-devel \ tk-devel \ libffi-devel \ xz-devel \ libuuid-devel \ libuuid \ libX11-devel \ libXext-devel \ libXrender-devel \ libXtst-devel \ libXi-devel \ libXrandr-devel
3. Python 特定依赖包
为了编译支持完整功能的 Python,这些依赖包是必不可少的:
zlib-devel
: 用于压缩和解压缩支持(gzip)。bzip2-devel
: 用于支持 bz2
压缩文件。openssl-devel
: 提供 SSL/TLS 支持。readline-devel
: 用于命令行的历史记录支持和更好的用户体验。sqlite-devel
: 支持内置的 SQLite 数据库模块。tk-devel
: 提供 Tkinter GUI 库的支持。libffi-devel
: 用于支持 ctypes
和 cffi
等库。 4. XML 和开发库
用于支持 Python 的 xml
和 lxml
等库的解析器:
sudo yum -y install \ libxml2-devel \ libxslt-devel
5. 其他有用的依赖
这些依赖项支持其他常见的 Python 模块和功能:
sudo yum -y install \ xz \ xz-devel \ gdbm-devel \ db4-devel \ expat-devel \ libpcap-devel \ ncurses-devel \ gdbm \ libgdbm-dev \ libgdbm-compat-dev \ libdb4o-cil-dev \ libbz2-dev \ liblzma-dev
6. Image 处理和音频处理相关库
如果你打算处理图像、音频或视频文件,可以安装这些库:
sudo yum -y install \ libjpeg-devel \ libpng-devel \ freetype-devel \ giflib-devel \ libtiff-devel \ openjpeg-devel \ libopenjpeg2 \ libopenjpeg-dev \ libwebp-devel \ libvorbis-devel \ libtheora-devel \ libogg-devel \ libavc1394-devel \ libdc1394-devel \ libraw1394-devel
7. 数据库相关开发库
用于支持 Python 与各种数据库的交互:
sudo yum -y install \ mysql-devel \ postgresql-devel \ mariadb-devel \ unixODBC-devel \ libpqxx-devel
8. 其他支持库
一些额外的依赖库,这些库可能被需要或推荐用于 Python 环境中的特定模块:
sudo yum -y install \ libXft-devel \ libXinerama-devel \ libXcursor-devel \ libXcomposite-devel \ libXdamage-devel \ libXfixes-devel \ libXi-devel \ libXmu-devel \ libXpm-devel \ libXaw-devel \ libXft-devel \ libXt-devel \ libXdmcp-devel \ libXau-devel \ libXaw3d-devel \ libXfixes-devel
9. 文档生成库
这些库支持生成文档的 Python 工具,如 Sphinx:
sudo yum -y install \ doxygen \ graphviz \ texinfo \ pandoc \ latexmk \ epydoc
10. 网络相关库
如果你需要网络支持库,如支持 curl
、ftp
等,可以安装这些库:
sudo yum -y install \ libcurl-devel \ libidn-devel \ openssh-clients \ openssh-server \ rsync \ nfs-utils
总结
以上是安装 Python 及其开发环境时可能需要的依赖包的完整列表。根据你的实际需要,某些依赖包可能不是必需的,但建议安装这些依赖包以确保你的 Python 环境具有广泛的功能支持。这些依赖包将有助于构建一个功能完备的 Python 环境,支持各种开发任务。
三、
在没有网络连接的 Linux 系统上离线安装并编译 Python 3 的步骤如下:
1. 准备工作
在有网络连接的计算机上下载 Python 源代码包和所需的依赖包。
1.1 下载 Python 源代码包
前往 Python 官方网站,下载所需版本的源代码压缩包(如Python-3.9.1.tgz
)。 wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
1.2 下载依赖包
下载 Python 编译所需的所有依赖包。这些包可以通过yum
或 apt-get
在有网络的系统上下载。 # 使用 yumdownloader 下载依赖包(CentOS/RHEL)sudo yum install yum-utilsyumdownloader --resolve \ wget \ make \ gcc \ zlib-devel \ bzip2-devel \ readline-devel \ sqlite-devel \ openssl-devel \ tk-devel \ libffi-devel \ xz-devel
将下载的 .rpm
包拷贝到 USB 驱动器或其他可移动存储设备上。 2. 传输文件到离线系统
使用 USB 驱动器或其他存储介质,将 Python 源代码包和所有依赖包传输到离线系统。# 例如,挂载 USB 驱动器到 /mnt/usbmount /dev/sdb1 /mnt/usbcp /mnt/usb/Python-3.9.1.tgz ~/cp /mnt/usb/*.rpm ~/
3. 安装依赖包
在离线系统上安装所有依赖包:# 在 CentOS/RHEL 系统上使用 rpm 安装sudo rpm -Uvh *.rpm
4. 编译并安装 Python 3
解压 Python 源代码包:tar xzf Python-3.9.1.tgzcd Python-3.9.1
配置编译环境,启用优化选项: ./configure --enable-optimizations
编译并安装 Python: sudo make altinstall
注意:使用 altinstall
而不是 install
以避免覆盖系统自带的 Python 版本。
5. 验证安装
确保 Python 3 安装成功:python3.9 --version
安装完成后,你可以使用 python3.9
命令来运行 Python 3。 6. (可选)安装 pip
安装 pip(如果没有随 Python 一起安装):sudo python3.9 -m ensurepip
总结流程图
以下是步骤的简要流程图:
准备工作 下载 Python 源代码下载依赖包 传输文件 使用 USB 驱动器或网络将文件传输到离线系统 安装依赖包 使用rpm
命令安装依赖包 编译和安装 Python 3 解压源代码并配置编译环境编译并安装 Python 验证安装 检查 Python 版本 (可选)安装 pip 通过这些步骤,你就可以在没有网络连接的 Linux 系统上成功离线安装和编译 Python 3。