温馨提示×

centos装python要注意什么

小樊
43
2026-10-03 08:53:37
栏目: 编程语言

在 CentOS 上安装 Python(尤其是新版本 Python 3)有几个很容易踩坑的点,下面按「注意事项 + 推荐做法」给你总结。


一、千万不要动系统自带 Python(最重要)

❌ 错误做法

rm -f /usr/bin/python

或把 python 指向 Python 3

⚠️ 原因

CentOS 7 及以前版本,很多系统命令依赖 Python 2:

  • yum
  • firewalld
  • dnf(CentOS 8)

改坏系统 Python = 系统崩

✅ 正确原则:

  • 系统 Python 不动
  • 新 Python 装到 /usr/local 或用虚拟环境

二、CentOS 版本差异(很关键)

CentOS 7

  • 默认 Python 2.7
  • 推荐装 Python 3.6 / 3.8 / 3.9

CentOS 8

  • 默认 Python 3(但版本较旧)
  • 可用 dnf 或源码安装

三、推荐安装方式(按场景)

✅ 方式 1:用系统包管理器(最简单)

yum install python3

或

dnf install python3

优点:

  • 稳定
  • 兼容性好

缺点:

  • 版本可能旧

✅ 方式 2:源码编译(推荐,可控)

1️⃣ 安装依赖(非常重要)

yum groupinstall "Development Tools"
yum install -y \
  gcc make \
  zlib-devel bzip2-devel \
  openssl-devel ncurses-devel \
  sqlite-devel readline-devel \
  tk-devel libffi-devel \
  xz-devel wget

⚠️ 不装这些,后面会:

  • 没 pip
  • 没 ssl
  • 没 sqlite

2️⃣ 下载并编译

cd /usr/src
wget https://www.python.org/ftp/python/3.9.18/Python-3.9.18.tgz
tar xzf Python-3.9.18.tgz
cd Python-3.9.18

./configure --enable-optimizations
make -j $(nproc)
make altinstall

✅ 注意:

  • 用 altinstall(不会覆盖 python)
  • 安装后命令是 python3.9

四、pip 问题(高频坑)

检查 pip

python3.9 -m pip --version

没有 pip?

python3.9 -m ensurepip --upgrade

或:

yum install python3-pip

五、虚拟环境(强烈建议)

python3.9 -m venv venv
source venv/bin/activate

好处:

  • 不影响系统
  • 项目隔离
  • 生产环境标准做法

六、防火墙 / SELinux 注意

如果你是:

  • Web 服务(Django / Flask)
  • 端口访问不了

检查:

systemctl status firewalld
getenforce

七、生产环境建议

✅ 推荐组合:

  • CentOS + Python 3.9
  • venv / virtualenv
  • gunicorn / uwsgi
  • nginx

❌ 不推荐:

  • 用 root 跑 Python 服务
  • 直接替换系统 python

八、常见错误汇总

问题 原因
pip 装不了包 没装 openssl-devel
import sqlite3 报错 没装 sqlite-devel
yum 坏了 改了系统 python
找不到 python3 用了 altinstall

九、一句话总结

CentOS 装 Python:系统 Python 不动,用 altinstall,装全依赖,用虚拟环境。

如果你告诉我:

  • CentOS 版本
  • Python 版本需求
  • 用途(开发 / 服务器 / 脚本)

我可以直接给你一套可复制的命令。

0 踩