Linux安装升级服务:Python


写在前面:

  1. 本文在部分内容方面,参考了CSDN部分博主的文章内容,如有冒犯请联系博主协商处理。
  2. 本文所有安装部分的内容和部分配置的内容都经博主实测有效,如有错误的地方,欢迎大家指正学习。
  3. 文章创作不易,请各位看官给个三连,博主在此先行感谢了!!!

一、安装环境说明

  • 查看当前 Linux 系统的 python 版本

    $ python --version
    Python 2.7.5
    $ python
    Python 2.7.5 (default, Oct 14 2020, 14:45:30)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>>
    
  • 查看系统上所有可用的python版本

    $ ll /usr/bin/python*
    lrwxrwxrwx. 1 root root    7 1223 19:48 /usr/bin/python -> python2
    lrwxrwxrwx. 1 root root    9 1223 19:48 /usr/bin/python2 -> python2.7
    -rwxr-xr-x. 1 root root 7144 1014 2020 /usr/bin/python2.7
    
  • 查看系统上 python 的文件目录和可执行文件的位置

    $ whereis python
    python: /usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz
    
    $ which python
    /usr/bin/python
    
  • 查看系统上 python 的文件的软链接情况

    $ ls -l /usr/bin/python*
    lrwxrwxrwx. 1 root root    7 1223 19:48 /usr/bin/python -> python2
    lrwxrwxrwx. 1 root root    9 1223 19:48 /usr/bin/python2 -> python2.7
    -rwxr-xr-x. 1 root root 7144 1014 2020 /usr/bin/python2.7
    
  • python3 版本对 openssl 版本有所要求:建议升级至 openssl-1.1.1k 及以上版本

    $ openssl version
    OpenSSL 1.0.2k-fips  26 Jan 2017
    # 若openssl版本为OpenSSL 1.0.2k版本可能会导致安装不成功
    
  • 下载地址:OpenSSL源码包

  • 下载版本为:openssl-1.1.1k.tar.gz

二、升级 openssl

  • 创建软件目录,上传文件至该目录

    $ mkdir -p /opt/openssl
    $ ll -h /opt/openssl/
    -rw-r--r-- 1 root root 9.4M 330 20:01 openssl-1.1.1k.tar.gz
    
  • 下载相关依赖包,备份相关目录

    # 下载安装openssl服务所需依赖包
    $ yum -y install gcc make perl zlib zlib-devel pam pam-devel
    
    $ whereis openssl
    openssl: /usr/bin/openssl /usr/lib64/openssl /usr/include/openssl /usr/share/man/man1/openssl.1ssl.gz
    
    # 备份/usr/lib64/openssl目录
    $ mv /usr/lib64/openssl /usr/lib64/openssl.bak
    
    # 备份/usr/bin/openssl目录
    $ mv /usr/bin/openssl /usr/bin/openssl.bak
    
    # 备份/usr/include/openssl目录
    $ mv /usr/include/openssl /usr/include/openssl.bak
    
  • 解压、安装 openssl 服务

    # 解压、创建安装目录
    $ cd /opt/openssl
    $ tar -zxvf openssl-1.1.1k.tar.gz
    $ cd openssl-1.1.1k/
    $ mkdir -p /usr/local/openssl
    
    # 编译、安装openssl服务
    $ ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl --shared
    $ make && make install 
    
  • 创建相关链接,添加动态链接库

    $ ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
    $ ln -s /usr/local/openssl/include/openssl /usr/include/openssl 
    
    $ ls -al /usr/bin/openssl
    $ ls -al /usr/include/openssl
    
    $ echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
    $ ldconfig			# 刷新库
    
    # 创建环境变量
    $ echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openssl/lib" >> /etc/profile
    $ source /etc/profile
    
    # 查看openssl版本
    $ openssl version
    OpenSSL 1.1.1k  25 Mar 2021
    $ openssl version -a
    

三、安装 python3

  • Python 下载地址:


  • 在官网下载 Python3 的压缩包
    1.png
    在这里插入图片描述
    在这里插入图片描述

  • 上传下载的压缩包至 Linux 系统 root 目录下 image.png

  • 解压 Python-3.12.2.tgz 压缩包查看目录内容

    $ wget https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tgz
    $ tar -zvxf Python-3.12.2.tgz
    $ cd Python-3.12.2/
    $ ls
    aclocal.m4    config.sub  configure.ac  Grammar  install-sh  LICENSE  Makefile.pre.in  Modules  Parser  PCbuild   pyconfig.h.in  README.rst
    config.guess  configure   Doc           Include  Lib         Mac      Misc             Objects  PC      Programs  Python         Tools
    

    在这里插入图片描述

  • 准备源码编译环境,下载相关依赖

    $ yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
    
  • 编译&安装 Python3

    $ mkdir -p /usr/local/python3				# 创建安装目录
    $ ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl --with-openssl-rpath=auto
    
    (1) ./configure:用于检查系统环境并生成用于构建软件包的 Makefile。
    (2)  --prefix=/usr/local/python3:这个选项指定了安装 Python3 的路径。
    

    7.png

      $ make && make install
    

    在这里插入图片描述

  • 创建软连接,查看软连接情况

    $ ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    $ ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    
    $ ls -n /usr/bin/pip3
    lrwxrwxrwx 1 0 0 27 321 18:09 /usr/bin/pip3 -> /usr/local/python3/bin/pip3
    $ ls -n /usr/bin/python3
    lrwxrwxrwx 1 0 0 30 321 18:09 /usr/bin/python3 -> /usr/local/python3/bin/python3
    
  • 添加 python3 的环境变量

    $ echo "PATH=/usr/local/python3/bin:$PATH" >> /etc/profile
    $ source /etc/profile
    
  • 验证安装是否成功

    $ python3
    Python 3.12.2 (main, Mar 21 2024, 18:03:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>
    $ python3 --version
    Python 3.12.2
    
    $ vim test.py
    name = "Alice"
    age = 25
    print("My name is", name, "and I am", age, "years old.")  
    
    $ python3 test.py
    My name is Alice and I am 25 years old.
    

四、安装使用 pip3

  • 基本概述: pip 是 Python 的包管理工具,用于安装和管理 Python 包。

  • 常用命令:pip install -i 索引源 package_name

    # 清华大学提供的一个网站,可供pip程序下载第三方包
    https://pypi.tuna.tsinghua.edu.cn/simple/
    
    # 阿里云提供的一个网站,可供pip程序下载第三方包
    https://mirrors.aliyun.com/pypi/simple/
    
  • 设定默认索引源

    # 注意目录, 当前目录为/root目录
    $ mkdir -p ~/.pip
    $ vim ~/.pip/pip.conf
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/
    
    [install]
    trusted-host = mirrors.aliyun.com
    
    $ pip3 install numpy
    
  • 安装包:用于安装指定的 Python 包

    $ pip3 install package_name
    
  • 升级包:用于升级已安装的包到最新版本

    $ pip3 install --upgrade package_name
    
  • 卸载包:用于卸载指定的 Python 包

    $ pip3 uninstall package_name
    
  • 列出已安装的包:列出当前环境中已安装的所有 Python 包

    $ pip3 list
    
  • 搜索包:用于在 PyPI(Python Package Index)中搜索包

    $ pip3 search search_term
    
  • 查看包的详细信息:用于查看特定包的详细信息,包括版本号、作者、依赖关系等

    $ pip3 show package_name
    
  • 安装包的特定版本:用于安装特定版本的包

    $ pip3 install package_name==version_number
    
  • 常用第三方包:

    - 科学计算中常用的:numpy 
    - 数据分析中常用的:pandas
    - 大数据计算中常用的:pyspark、apache-flink
    - 图形可视化常用的:matplotlib、pyecharts 
    - 人工智能常用的:tensorflow 
    

五、安装疑问

1、pip 安装第三方包 ssl 服务不可用

  • 如果使用 pip 安装 python 的第三方包 (如: numpy),出现如下异常:

    $ pip3 install numpy
    WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
    ## 警告:pip配置了需要TLS/SSL的位置,但是Python中的SSL模块不可用
    

    在这里插入图片描述

  • 解决办法: 升级 openssl 服务,重新安装 Python3,升级办法详情在文章上面

    # 注意:建议添加openssl服务的环境变量
    $ echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openssl/lib" >> /etc/profile
    $ source /etc/profile
    
    # 注意:重新安装python时, 最好链接openssl库安装
    $ ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl --with-openssl-rpath=auto
    
  • 如若上述办法仍然无法解决问题,则可以考虑如下方法:

    $ mkdir -p ~/.pip
    $ vim ~/.pip/pip.conf
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/
    
    [install]
    trusted-host = mirrors.aliyun.com
    
    $ pip3 install numpy
    Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
    Collecting numpy
      Downloading http://mirrors.aliyun.com/pypi/packages/0f/50/de23fde84e45f5c4fda2488c759b69990fd4512387a8632860f3ac9cd225/numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.0 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.0/18.0 MB 1.8 MB/s eta 0:00:00
    Installing collected packages: numpy
    Successfully installed numpy-1.26.4
    

2、pip 命令以 root 用户运行环境问题

  • 如果安装 Python 后出现如下警告内容:

    WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
    

    在这里插入图片描述

  • 解决办法: 创建虚拟环境,虚拟环境是一种隔离的Python环境,允许您在其中安装和管理软件包,而不会影响系统的其他部分。

    # 1. 查看当前 Python 是否安装了 venv 模块
    $ python3 -m venv --help
    
    # 2. 创建虚拟环境,并选择一个目录作为虚拟环境的根目录
    $ python3 -m venv pyenv			# 创建名为myenv的虚拟环境
    
    # 3. 激活虚拟环境
    $ source pyenv/bin/activate
    
    # 4. 在激活的虚拟环境中使用pip3
    ## 在虚拟环境中使用pip来安装、升级和删除软件包,而不会影响系统范围的Python安装
    $ pip3 install pandas
    
    # 5. 退出虚拟环境
    $ deactivate
    

    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黑哪有坏心思!

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值