1. 环境准备:从零开始的CentOS7基础配置
很多朋友第一次接触Linux服务器,尤其是CentOS7,可能会觉得有点陌生,感觉命令行黑乎乎的,离我们熟悉的图形化开发环境很远。我自己刚开始用的时候也是这种感觉,总觉得在服务器上写Python代码,是不是就得全程敲命令,效率很低。其实完全不是这样,我们完全可以在CentOS7上搭建一个和Windows、macOS上体验几乎一样的PyCharm图形化开发环境。这篇文章,我就把我自己从零开始,一步步搭建环境的完整过程,包括踩过的坑和总结的经验,详细地分享给你。整个过程其实并不复杂,只要你跟着步骤走,即使是Linux新手,也能在半小时内搞定一个功能齐全的Python开发工作站。
首先,我们得明确一个前提:你手头得有一台安装好CentOS7的机器。这台机器可以是物理服务器,也可以是云服务器(比如阿里云、腾讯云的ECS),或者是你本地的虚拟机(比如VMware或VirtualBox里安装的)。我强烈建议,如果你是第一次操作,最好在虚拟机里进行,这样即使操作失误,也方便回滚,不会影响你的主力机。拿到这台CentOS7之后,第一件事就是确保网络是通的。你可以通过 ping www.baidu.com 来测试一下。如果网络不通,后续的安装步骤都会失败,所以这是第一步要确认的。
接下来,我们需要更新一下系统。虽然CentOS7很稳定,但自带的软件源里的包版本可能比较旧。执行 yum update -y 这个命令,它会更新所有可升级的软件包。这个过程可能会花点时间,取决于你的网络速度和更新包的数量,喝杯咖啡等一下就好。更新完成后,我建议重启一下系统,确保所有更新都生效,执行 reboot 命令。重启后,我们再来进行下一步。很多教程会跳过系统更新这一步,但我实测下来,一个更新过的干净系统,能避免很多因为依赖库版本过旧导致的奇怪问题,这一步的几分钟投资非常值得。
2. Python3的安装与系统兼容性处理
CentOS7默认自带的Python版本是2.7.5,这个版本在2020年就已经停止官方维护了。现在Python生态的主流是Python3,所以我们第一步就是安装Python3,并且要让系统默认使用它。这里有个关键点:CentOS7的很多系统工具(比如后面会用到的yum)是依赖Python2的,我们不能粗暴地删除Python2,而是要让Python3和Python2和谐共存,并且让我们的命令行默认指向Python3。
2.1 安装Python3
最省心的方法是通过EPEL(Extra Packages for Enterprise Linux)仓库来安装。EPEL是由Fedora社区维护的高质量扩展包仓库,为RHEL和CentOS提供额外的软件包。首先安装EPEL源:
yum install -y epel-release
安装成功后,直接安装Python3:
yum install -y python3
这个命令会安装EPEL仓库里提供的默认Python3版本。在我写这篇文章的时候,安装的是Python 3.6.8。这个版本对于大多数开发来说已经够用了。如果你需要特定版本,比如Python 3.8或3.9,就需要通过源码编译或者使用其他第三方仓库(如Software Collections, SCL)来安装,那会稍微复杂一些。对于新手,我建议先用默认的3.6.8,等环境完全搭起来、跑通了,再考虑升级特定版本。
安装完成后,你可以用 python3 --version 和 pip3 --version 来验证一下。这时候你会发现,输入 python 命令,出来的还是Python 2.7.5。这是因为系统的 python 这个命令,实际上是一个指向 /usr/bin/python2.7 的软链接。我们需要修改这个指向。
2.2 修改系统默认Python指向
我们先看看当前的链接情况:
ls -l /usr/bin/python*
你会看到类似 python -> python2 和 python2 -> python2.7 这样的链接。我们的目标是让 python 指向 python3。操作如下:
# 备份原来的python软链接(一个好习惯)
mv /usr/bin/python /usr/bin/python.bak
# 创建新的软链接指向python3
ln -s /usr/bin/python3 /usr/bin/python
现在再运行 python --version,应该显示的是Python 3.6.8了。但是,这里有一个非常重要的坑:yum包管理器是用Python2写的。你把默认python改成3之后,直接运行 yum 命令会报语法错误,因为yum的脚本头(#!/usr/bin/python)现在会去找Python3


246

被折叠的 条评论
为什么被折叠?



